一、代码管理平台介绍

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

版本管理工具发展史:cvs–>svn–>git

svn:全称subversion,是一个开源版本控制系统,始于2000年

git是Linux的创始人linus发起的,2005年发布。

git与svn不同在于git不需要依赖服务端就可以工作,即git是分布式的。

githup是基于git的在线web页面代码托管平台,可以选择付费服务。

gitlab可以认为是一个开源的github,两种没有直接关系。

二、安装svn

1、使用yum安装svn

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

2、创建版本库

[root@node1 ~]# mkdir -p /data/svnroot/myproject
[root@node1 ~]# svnadmin create /data/svnroot/myproject/
[root@node1 ~]# ls /data/svnroot/myproject/
conf  db  format  hooks  locks  README.txt
[root@node1 ~]#

3、修改配置文件

authz:权限配置文件

passwd:密码文件

修改权限文件:

[root@node1 ~]# cd /data/svnroot/myproject/conf/
[root@node1 conf]# vim authz
[groups]

[/]
@admins = rw
* = r
[myproject:/]
user1 = rw

修改密码文件:

[root@node1 conf]# vim passwd
[users]

user1 = 123456

修改配置文件:

[root@node1 conf]# vim svnserve.conf
[general]
anon-access = none
auth-access =  write
password-db = passwd
authz-db = authz
realm = /data/svnroot/myproject

4、启动svn

[root@node1 ~]# svnserve -d -r /data/svnroot/
[root@node1 ~]# ps aux | grep svn
root      10581  0.0  0.0 180712   808 ?        Ss   22:56   0:00 svnserve -d -r /data/svnroot/
root      10765  0.0  0.0 112704   968 pts/0    S+   22:57   0:00 grep --color=auto svn
[root@node1 ~]#

三、Linux上使用svn

在node2上使用svn

1、先安装svn:

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

2、连接

[root@node2 ~]# svn checkout svn://192.168.10.205/myproject
Authentication realm: <svn://192.168.10.205:3690> /data/svnroot/myproject
Password for 'root': 
Authentication realm: <svn://192.168.10.205:3690> /data/svnroot/myproject
Username: user1
Password for 'user1': 

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <svn://192.168.10.205:3690> /data/svnroot/myproject

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/root/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Checked out revision 0.
[root@node2 ~]# cd myproject
[root@node2 myproject]# ls -la
total 4
drwxr-xr-x.  3 root root   18 Jul 31 23:06 .
dr-xr-x---. 10 root root 4096 Jul 31 23:06 ..
drwxr-xr-x.  4 root root   75 Jul 31 23:06 .svn
[root@node2 myproject]#

OK,连接成功。

或者:

[root@node2 ~]# svn checkout svn://192.168.10.205/myproject --username=user1
Checked out revision 0.
[root@node2 ~]#

进入项目:

[root@node2 ~]# cd myproject/
[root@node2 myproject]# ls
[root@node2 myproject]# ls -la
total 4
drwxr-xr-x.  3 root root   18 Jul 31 23:06 .
dr-xr-x---. 10 root root 4096 Jul 31 23:06 ..
drwxr-xr-x.  4 root root   75 Jul 31 23:09 .svn
[root@node2 myproject]#


其他的内容请看我在开源中国上的博文:代码管理平台

分类: Linux服务

发表评论

电子邮件地址不会被公开。 必填项已用*标注