TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。
这里我们采用yum源安装方式:
1、安装svn
#yum install subversion -y
2、建立SVN根目录
#mkdir -p /data/repos/
3、启动SVN服务指定服务的SVN根目录
#svnserve -d -r /data/repos/ –pid-file=/data/repos/svn.pid
4、查看 SVN 进程:
#ps -ef|grep svn|grep -vgrep
root 3167 1 0 11:03? 00:00:00
#svnserve -d -r /data/repos/
–pid-file=/data/repos/svn.pid
看到以上那段信息说明SVN服务器已安装成功,下边我们来看看SVN服务的商品号
5、检测 SVN 端口:
#netstat -ln |grep 3690
tcp 0 0:::3690 :::* LISTEN
6、建立版本库
创建一个新的 Subversion 项目 obj
#svnadmin create /data/repos/obj
7、配置允许用户guoguo读写访问
#cd /data/repos/obj/conf/
vi svnserve.conf 将以下内容前的‘#’和空格 全部去掉,并修改内容
=================================================
12 anon-access = none //这里默认是read
13 auth-access = write
18 password-db = /data/repos/obj/conf/passwd
25 authz-db = /data/repos/obj/conf/authz
=================================================
注: svnserve.conf 中每个参数都要顶格写,开头不能有空格。
8、重启nginx(或者apache)服务器,路径根据自己的实际情况而定
#service nginx restart
#/usr/local/apache2/bin/apachectl graceful
#/usr/local/apache2/bin/apachectl restart
9、备份原authz和passwd文件:存放svn服务器用户的帐号、密码
#cp authz passwd /data/repos/
10-1、authz文件的配置: 存放svn服务器用户的权限
(此步骤是设置用户分组,不想分组可以直接不配置authz文件,这里的分组是SVN内容的分组,跟系统分组没有关系,下边我们先说一下分组配置)
#cd /data/repos/obj/conf/
#vi authz
添加用户级
#################################
[groups]
#定义组
g_webadmin = shuo021
#定义目录
[trunk:/]
@g_webadmin = rw
#################################
提示:注意 authz 权限格式的写法
1.authz 中每个参数都要顶格写,开头不能有空格。
2.对于组,要@开头,用户不需要@开头。
10-2、不配置auth文件,直接对passwd文件进行用户及密码的设置
11、passwd 文件用户及密码的设置
#vi passwd
添加:
#######################
# user=passwd
guoguo=guoguo123
######################
提示:
1.等号前为 SVN 帐号,等号后为 svn 密码
2.更改 svnserve.conf 时,需要重起 SVN,更改 authz,passwd 文件时不需要重启
重启 SVN 命令<非必需>
#kill -USR1 `cat/data/repos/svn.pid`
#svnserve -d -r /data/repos/ –pid-file=/data/repos/svn.pid
提示:当更改 svnserve.conf 时,需要重起 SVN,更改 authz,passwd 文件时不需要重起
到此服务器部署完成!
下边是Windows下安装客户端
TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi
看到‘检出’两个字就说明安装完成,点击以后输出你的SVN服务器IP,其实就是虚拟机的IP,如下图
obj就是刚刚的项目目录名称,
之后输入刚刚设置的账号密码guoguo就OK了