CentOS(Linux) SVN服务器搭建+同步更新+多版本库+开机启动

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenguanghan123/article/details/82083653

CentOS(Linux) SVN服务器搭建+同步更新+多版本库+开机启动

由于公司项目需要,需要在阿里云CentOS服务器上搭建SVN服务器,实现多版本库同步更新和开机自启,所以自己动手,丰衣足食,MARK下,以供后用

1、安装:

# yum install subversion

 

2、查看安装位置:

# rpm -ql subversion

 

3、创建svn版本库目录:

# cd /data

# mkdir svn

 

4、创建版本库(两个版本库,对应我的两个项目):

# /usr/bin/svnadmin create /data/svn/iasknew

# /usr/bin/svnadmin create /data/svn/axoa

 

5、分别进入各个版本库的conf目录(该svn版本库配置文件):

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

#cd /data/svn/iasknew/conf

 

6、设置帐号密码:

# vi passwd

在[users]模块中添加用户和密码,格式:帐号 = 密码,如 admin = 123

 

7、设置权限:

# vi authz

在末尾添加如下代码:

[/]

admin = rw

意思是版本库的根目录admin对其有读写权限。

 

8、修改svnserve.conf文件:

# vi svnserve.conf

打开下面的几个注释:

anon-access = read             #匿名用户可读

auth-access = write              #授权用户可写

password-db = passwd        #使用哪个文件作为账号文件

authz-db = authz                  #使用哪个文件作为权限文件

realm = /data/svn/iasknew   #认证空间名,版本库所在目录

 

9、重复执行5、6、7、8步骤,直到所有版本库设置完成

 

10、启动svn版本库:

# svnserve -d -r /data/svn

 

11、设置开机启动:

# vi /etc/rc.d/rc.local

# chmod 777 rc.local(确保该文件有执行权限)

在末尾添加

/usr/bin/svnserve -d -r /data/svn

 

同步(checkout)服务器数据到本地 命令:svn checkout [directory] svn co [directory] 如:

# cd /www/website

# svn co svn://svn_site_url  ./

 

12、进入网站根目录:

# cd /data/wwwroot

 

13、新建WEB程序目录:

# svn checkout svn://120.77.23.109/axoa

# svn checkout svn://120.77.23.109/iasknew

 

14、分别进入各个版本库的hooks目录(该svn版本库配置文件):

# cd /data/svn/axoa/hooks

 

15、复制post-commit文件并增加可执行权限:

# cp post-commit.tmpl  post-commit

# chmod -R +x post-commit

 

16、修改post-commit文件:

在末尾添加如下内容,把末尾几行没有注释掉的注释掉,修改内容如下:

SVN=/usr/bin/svn                     #这里配置的是svn安装bin目录下的svn文件 

WEB=/data/wwwroot/axoa/      #对应的WEB目录

export LANG=en_US.UTF-8

$SVN update $WEB --username admin --password A123zure

 

17、重复执行14、15、16步骤,直到所有版本库设置完成

 

18、启动SVN:

# netstat -tunlp | grep svn

# kill -9 进程id

# svnserve -d -r /data/svn

 

19、注意:

确保版本库都在svn文件夹里面

export LANG=zh_CN.GBK 是为了解决svn post commit 中文乱码

 

20、checkout客户端访问:

svn://服务器ip/iasknew

输入设置的账号、密码即可

猜你喜欢

转载自blog.csdn.net/chenguanghan123/article/details/82083653