linux连接svn上代码,代码管理平台介绍、安装svn、客户端上使用svn(linux)、客户端上使用svn(windows)...

代码管理平台介绍

代码管理平台介绍--svn

版本控制,记录若干文件内容变化,以便未来查阅特定版本修订状况.

好比某一个业务,须要不断更新,好比产品经理这周提交了产品新的需求,改动了一些代码,咱们把新的代码上传到服务器上去,这时候去访问网站就产生了新的变化. 可能咱们天天都有不少的代码须要更新,假如某天想要看几个月前某个业务都更新了哪些地方、都改了哪些功能,想要作一个统计,那就须要去翻看日志,若是这些日志存在还能找到,若这些日志都不存在,那么前面的变动就什么都不知道了. 有了这些代码管理平台以后,能够便咱们查看前面作了哪些变动以及记录,且支持协同开发.

Svn全称subversion,是一个开源版本控制系统,最初母的是为了更好管理Linux内核代码

Git和svn不一样在于Git不须要依赖服务端就能够工做,即git是分布式的.

GitHub是基于Git的线下web页面代码托管品台,能够选择付费服务

GitLab能够认为是一个开源的GitHub,二者没有直接关系

安装sv

准备两台机器:192.168.2.115 -- 服务端

192.168.2.116 -- 客户端git

下载服务端

[root@root-01 ~]# yum install -y subversion

建立版本库

建立版本库的目录:

[root@root-01 ~]# mkdir -p /data/svnroot/myproject

初始化:

[root@root-01 ~]# svnadmin create /data/svnroot/myproject

初始化后会生成配置文件等:

[root@root-01 ~]# ls -la /data/svnroot/myproject

总用量 8

drwxr-xr-x 6 root root 86 10月 23 11:38 .

drwxr-xr-x 3 root root 23 10月 23 11:34 ..

drwxr-xr-x 2 root root 54 10月 23 11:38 conf

drwxr-sr-x 6 root root 233 10月 23 11:38 db

-r--r--r-- 1 root root 2 10月 23 11:38 format

drwxr-xr-x 2 root root 231 10月 23 11:38 hooks

drwxr-xr-x 2 root root 41 10月 23 11:38 locks

-rw-r--r-- 1 root root 229 10月 23 11:38 README.txt

配置文件目录:

[root@root-01 ~]# cd /data/svnroot/myproject/conf/

[root@root-01 conf]# ls

authz passwd svnserve.conf

说明:authz 文件是用来控制权限的

passwd 文件是用来定义密码的

svnserve.conf 是仓库的配置文件

编辑authz文件

vim authz

在[groups]下面添加:

Anna = user1,user2 Anna是用户组,用户组包含了两个用户(user1和user2)

[/] 方括号里面的根指的是这个目录:/data/svnroot/myproject/conf/

@Anna = rw Anna用户组可读可写

* = r 除了Anna用户组,其余的可读

另外一种方式:

[myproject:/] [myproject:/] 这表示一个项目,这种方式用在svnroot目录下有多个项目,也就是指定某个项目

user1 = rw

编辑passwd文件

[root@root-01 conf]# vim passwd

[users]

# harry = harryssecret

# sally = sallyssecret

添加用户名和密码:

Anna = 123456

user1 = 586898

user2 = 586898

注:前面是用户名,后面是密码

编辑svnserve.conf

vim svnserve.conf

在[general]下面添加:

anon-access = none anon--匿名用户 没有任何权限

auth-access = write auth--被受权的用户 可写

password-db = passwd 指定用户密码的文件是passwd

authz-db = authz 指定用户权限的文件是authz

realm = /data/svnroot/myproject 表示对应哪一个项目生效

启动svn

启动:

[root@root-01 conf]# svnserve -d -r /data/svnroot/

查看进程:

[root@root-01 conf]# ps aux |grep svn

root 3877 0.0 0.0 162188 656 ? Ss 13:48 0:00 svnserve -d -r /data/svnroot/

root 3882 0.0 0.0 112664 968 pts/0 S+ 13:57 0:00 grep --color=auto svn

查看监听端口3690:

[root@root-01 conf]# netstat -nlpt |grep svn

tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3877/svnserve

客户端上使用svn(Linux)

下载客户端

说明:客户端下载subversion就可使用svn命令web

[root@root-02 ~]# yum install -y subversion

检索

检索:

[root@root-02 ~]# cd /home

[root@root-02 svn]# svn checkout svn://192.168.2.115/myproject --username=user1

认证领域: /data/svnroot/myproject

“user1”的密码:

-----------------------------------------------------------------------

注意! 你的密码,对于认证域:

/data/svnroot/myproject

只能明文保存在磁盘上! 若是可能的话,请考虑配置你的系统,让 Subversion

能够保存加密后的密码。请参阅文档以得到详细信息。

你能够经过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,

来避免再次出现此警告。

-----------------------------------------------------------------------

保存未加密的密码(yes/no)?yes

取出版本 0。

[root@root-02 home]# ls

myproject

客户端更新的文件上传到服务端

说明:是在客户端操做vim

[root@root-02 ~]# cd /home/myproject

拷贝文件:

[root@root-02 myproject]# cp /etc/favicon.png .

增长:

[root@root-02 myproject]# svn add ./favicon.png

A (bin) favicon.png

上传到服务端:

[root@root-02 myproject]# svn commit -m "add favicon.png"

正在增长 (二进制) favicon.png

传输文件数据.

提交后的版本为 2。

查看服务端

服务端本地是没法显示刚客户端上传的文件:

[root@root-01 ~]# cd /home/svntest/myproject

[root@root-01 myproject]# ls

升级能够看到客户端上传的文件:

[root@root-01 myproject]# svn up

正在升级 '.':

A favicon.png

更新到版本 2。

[root@root-01 myproject]# ls

favicon.png

客户端上使用svn(windows)

下载svn

svn官网:https://tortoisesvn.net/windows

点击DE EN ZH --> 点击下载 --> 根据系统下载32位或64位bash

a98328b87f4c48d3b44670f231eaa59a.gif

下载完成后点击打开,全部都点击下一步

a98328b87f4c48d3b44670f231eaa59a.gif

在桌面建立一个目录,命名为myproject

点击右键,看看有没有红色框框内的两个图标,若没有的话,重启电脑服务器

a98328b87f4c48d3b44670f231eaa59a.gif

点击svn checkout

说明: 红色框框内的IP地址和目录须要填写 --->点击oktcp

a98328b87f4c48d3b44670f231eaa59a.gif

点击ok后会弹出认证对话框

填写用户名和密码 -->点击ok分布式

a98328b87f4c48d3b44670f231eaa59a.gif

最后还会弹出一个对话框,点击ok便可

a98328b87f4c48d3b44670f231eaa59a.gif

checkout后,myproject目录就有两个文件svn

a98328b87f4c48d3b44670f231eaa59a.gif

把客服端的1.txt上传到服务端

建立1.txt --> 点击右键Tortoise SVN -->点击Add -->点击SVNcommit -->会弹出一个对话框,要填写add 1.txt -->点击ok --> 再点击ok网站

a98328b87f4c48d3b44670f231eaa59a.gif

a98328b87f4c48d3b44670f231eaa59a.gif

查看服务端,升级后就有1.txt

[root@root-01 ~] cd /home/svntest/myproject

升级:

[root@root-01 myproject]# svn up

正在升级 '.':

A 1.txt

更新到版本 5。

[root@root-01 myproject]# ls

123.txt 1.txt favicon.png fstab test.txt

在Linux上建立11.txt,上传到服务端

[root@root-01 myproject]# vim 11.txt

[root@root-01 myproject]# svn add 11.txt

A 11.txt

[root@root-01 myproject]# svn commit -m "add 11.txt"

正在增长 11.txt

传输文件数据.

提交后的版本为 6。

Windows要想查看这个文件,点击右键SVNUpdate便可

a98328b87f4c48d3b44670f231eaa59a.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 文件读取 监控,linux 文件系统的监控

完整性检查是HIDS的重要组成部分之一,linux下做完整性检查的思路有3个1、哈希对比2、签名校验3、inotify方法有2个:A、定期检测,例如通过cron或程序内置计时器B、实时检测,inotify1、2一般和A,3一般和B。用inotify做完…

<load-on-startup>1</load-on-startup>的作用

1)load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调用其init()方法)。 2)它的值必须是一个整数,表示servlet应该被载入的顺序 3)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet; 4)当值小于0或…

Spring初始化:org.springframework.we...ContextLoaderListener的作用

Spring初始化&#xff1a;org.springframework.web.context.ContextLoaderListener的作用 在web.xml种这样配置 <listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>ContextLoaderList…

mx linux安装方法,MX Linux是什么_MX Linux镜像下载-华为云

简介MX Linux是基于Debian稳定分支的面向桌面的Linux发行&#xff0c;它是antiX及早先的MEPIS Linux社区合作的产物。使用说明MX Linux的仓库地址为&#xff1a;https://repo.huaweicloud.com/mxlinux/MX Linux的镜像地址为&#xff1a;https://repo.huaweicloud.com/mxlinux-c…

Java中Map里put方法的返回值

在java中,Map里的put方法,如果key值不存在,则返回值是null,但是key值如果存在,则会返回原先被替换掉的value值.(当然,map中的key和value都允许是null). Map map new HashMap();Object obj null;obj map.put(null, null);System.out.println(obj); //nullobj map.put(null, …

Linux统一编程接口,restful接口设计规范总结

一、重要概念&#xff1a;REST,即Representational State Transfer的缩写。我对这个词组的翻译是"表现层状态转化"。Resource(资源) &#xff1a;对象的单个实例。 例如&#xff0c;一只动物。它可以是一段文本、一张图片、一首歌曲、一种服务&#xff0c;总之就是一…

重写hashcode和equals方法

一。前言 我们都知道&#xff0c;要比较两个对象是否相等时需要调用对象的equals()方法&#xff0c;即判断对象引用所指向的对象地址是否相等&#xff0c;对象地址相等时&#xff0c;那么与对象相关的对象句柄、对象头、对象实例数据、对象类型数据等也是完全一致的&#xff0…

linux 安装log4j,Log4j 安装

Log4j教程 - Log4j安装Log4j API包是根据Apache软件许可证分发的。最新的log4j版本&#xff0c;包括全源代码&#xff0c;类文件和文档可以在http://logging.apache.org/log4j/找到。我们可以从上面的链接下载apache-log4j-x.x.x.tar.gz或zip文件。支持库我们可以使用log4j将信…

input输入框只读的几种方式

input输入框只读的几种方式 **readonly&#xff1a;**只针对input(text / password)和textarea有效&#xff1b;如果设为true&#xff0c;用户只是不能编辑对应的文本&#xff0c;但是仍然可以聚焦焦点&#xff0c;并且在提交表单的时候&#xff0c;该输入项会作为form的一项提…

linux sql 语句菜鸟,Linux安装mysql

要在centos上安装mysql&#xff0c;这些知识还不是很了解&#xff0c;找了一些资料分享一下1、下载mysql-5.5.3-m3.tar.gz&#xff0c;并且解压.tar -xzvf mysql-5.1.36.tar.gz2、添加mysql组&#xff0c;新建mysql用户groupadd mysqluseradd -g mysql mysql3、进入目录cd mysq…

@Autowired注入为null的几种情况

1.在应用的Filter或Listener中使用了Autowired &#xff0c; 原因&#xff1a;因为Filter和Listener加载顺序优先于spring容器初始化实例&#xff0c;所以使用Autowired肯定为null了~~ 解决&#xff1a;用ApplicationContext根据bean名称&#xff08;注意名称为实现类而不是接…

约瑟夫环c语言程序完整版,C语言:约瑟夫环问题(源代码)

本帖最后由 geige 于 2015-7-26 00:48 编辑#include#includestruct stu //构建一个新的数据类型{int num;struct stu *next;};struct stu *createlist(int n); //函数声明int main(){struct stu *head,*p,*temp; //定义头指针&#xff0c;以及中间指针temp&#xff0c;用来删…

js中遇到的一个错误Uncaught SyntaxError: missing )after argument list

报的错误如下&#xff1a; 代码&#xff1a; 解决&#xff1a; 加上引号即可。

c语言第六次实验报告,第一年C语言实验报告6列

成都理工大学计算机工程学院“编程基础”实验报告1. 实验目的(1)精通一维数组. 二维数组的定义&#xff0c;初始化以及输入和输出方法(2)掌握字符数组和字符串函数的使用(3)掌握与数组有关的常用算法2. 实验内容(1)在给定的字符串中找到指定的字符&#xff1b;要求:①通过直接初…

静态页面被拦截解决办法

在配置中央调度器的时候&#xff0c;url-pattern设置为*.do&#xff0c;以后的请求中写什么.do&#xff0c;不会出现静态页面被拦截的情况。 当url-pattern设置为/时&#xff0c;出现了静态页面被拦截 解决&#xff1a; 1.使用defaultServlet&#xff0c;在web.xml中的Dispatch…

c语言程序设计报告数制转换,数制转换-C语言程序设计课程设计报告.docx

计算机学院《高级语言程序设计》课程设计报告 PAGE \* MERGEFORMAT 10学号2016-2017学年 第二学期《C语言程序设计》课程设计报告题目&#xff1a;数制转换专业&#xff1a;网络工程(对口)班级&#xff1a;姓名&#xff1a;指导教师&#xff1a;成绩&#xff1a;计算机学院2017…

IDEA中maven的Plugins报红解决方法

IDEA中maven的Plugins报红解决方法 Idea中maven的Plugins报红解决方法 我的maven项目中plugins下的所有文件都报红&#xff0c;查看报错&#xff0c;这是Maven中plugins没有存入本地的仓库&#xff0c;点击Settings查看Build&#xff0c;Execution…》》Build Tools》》Maven》…

ssm前端时间格式转换

1&#xff1a;在实体类加注解 DateTimeFormat(pattern"yyyy-MM-dd") private Date stime ;2&#xff1a;在前端页面引入jstl <% taglib uri"http://java.sun.com/jsp/jstl/fmt" prefix"fmt"%><table border"1px"><t…

标准C语言各种时间函数用法,使用c语言标准库中的时间函数

#include #include int main(void){time_t start, finish, now;struct tm *ptr;char *c, buf1[80];double duration;//记录程序开始的时间start time(0);//记录当前时间&#xff0c;以另一种方式调用time()time(&now);//将time_t值转换成tm类型的结构ptr localtime(&…

git credential manager for windows解决方法

换电脑之后因为git 账号问题修改了git账号密码&#xff0c;但问题出现了&#xff0c;每次都让输入账号密码&#xff0c;window的一遍&#xff0c;git的一遍。之后git设置可以保存密码&#xff0c;但window安全中心却每次都让输入密码解决方法。 一&#xff0c;保存 git 的密码…