svn部署-linux

Svn作用

Subversion是一个自由/开源的版本控制系统,一组文件存放在中心版本库,记录每一次文件和目录的修改,Subversion允许把数据恢复到早期版本,或是检查数据修改的历史,Subversion可以通过网络访问它的版本库,从而使用户在不同的电脑上进行操作。   

举例:svn在192.168.1.160上面

     A跟B同时修改160上面的aa.txt文件,两者传上去之后160会整合A跟B的修改。

 

系统环境:Centos 6.5

第一步:通过yum命令安装svnserve,命令如下:

>yum -y install subversion

此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行

若需查看svn安装位置,可以用以下命令:

>rpm -ql subversion

第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)

选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:

>mkdir /var/svn/svnrepos

第三步:创建svn版本库

在第二步建立的路径基础上,创建版本库,命令如下:

>svnadmin create /var/svn/xxxx   (xxxx为你预期的版本库名称,可自定义)

创建成功后,进入xxx目录下

>cd /var/svn/xxxx

进入目录,可以看见如下文件信息:

 

 

第四步:配置修改

进入已经创建好的版本库目录下,也就是前文说创建的xxxx

进入conf

>cd /var/svn/xxxx/conf

conf目录下,一共存放三份重要的配置文件,如下:

 

 

authz:负责账号权限的管理,控制账号是否读写权限

passwd:负责账号和密码的用户名单管理

svnserve.conf:svn服务器配置文件

细节修改如下:(希望大家严格按照以下信息,不用参考网络上其他资料)

1.修改authz文件信息,如下:

 

 

在末尾添加如下代码:

[/]

zhangsan=rw

lisi=rw

wangwu=r

意思是版本库的根目录zhangsan,lisi对其有读写权限,wangwu只有读权限。

或许

在[groups]下增加以下内容
admin=zhangsan,lisi
user=lisi                     规定了两个组,admin组和user组 

 [/]                            本案例根目录为svnrepos
@admin=rw              admin组的权限为读写, 指定组前面必须加上@ 
@user=r               user组的权限为只读,指定组前面必须加上@ 

2.修改passwd文件信息

>vi passwd

账号密码文件无需做修改,也是直接将账号和密码信息追加到文件中即可,注意格式为:

账号 = 密码

例如:admin = 123456

修改svnserve.conf(重要)

3.vi svnserve.conf

原始文件内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可,如下:

 

 

打开下面的几个注释:

anon-access = read #匿名用户可读,不想匿名用户可读,设置为none

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

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

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

realm =hengqian # 认证空间名,版本库所在目录

第五步:防火墙开启

多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题,大家按照如下3条命令逐一执行即可

>/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

>/etc/init.d/iptables save

>service iptables restart

执行结果如下图:

 

 

六:启动httpd/svn服务器

Service httpd restart

在跟目录下,执行如下命令:

>svnserve -d -r /var/svn/svnrepos

启动成功后,可用ps -aux查看服务启动是否成功

七:客户端访问svn服务器

安装svn客户端

目前最流行的svn客户端非TortoiseSVN莫属

下载安装

客户端连接地址:svn://公网或内网的IP地址/xxxx,有时候需要添加端口号

用户名/密码: test/123456789  ##要和之前设置的用户名和密码匹配

 

 

 

 

 注意:

默认端口为3690,如果该端口被占用,或者需要修改端口,使用下面语句

svnserve -d -r /opt/svn/repositories --listen-port 3691

新建一个xxx.txt文本

 

 

 

 

 

 

posted @ 2019-01-02 18:33  禾子、  阅读(307)  评论(0编辑  收藏  举报