SVN作为新一代代码版本管理工具,有很多优点,管理方便,逻辑明确,安全性高,代码一致性高。SVN数据存储有两种方式,BDB(事务安全表类型)和FSFS(一种不需要数据库的存储系统),为了避免在服务器连接中断时锁住数据,FSFS是一种更安全也更多人使用的方式。SVN的运行方式也有两种,一种是独立服务器,另一种是借助apache服务,各有利弊,下面先介绍一下svn独立服务器的部署步骤。
一、独立服务器部署设置
安装subversion
1 2 3 4 5 |
#yum install -y subversion #mkdir -p /data/svn //创建svn目录 #chmod -R 777 /data/svn //修改目录权限为777 #svnadmin create /data/svn/suvan //创建一个svn版本仓库suvan #cd /data/svn/suvan/conf //进入repos版本仓库下的配置文件目录 |
修改此目录下的三个配置文件
1.svnserve.conf //配置版本库信息和用户文件和用户密码文件的路径、版本库路径
取消如下几行注释,每行的最左边不能有空格:
1 2 3 4 5 |
anon-access = none //read改为none,也可不改 auth-access = write password-db = passwd authz-db = authz realm = suvan //改成自己的版本库 |
2.authz //创建svn组和组用户的权限
1 2 3 4 5 6 7 |
[groups] admin = suvan //创建一个admin的组,并添加1个用户suvan [/] //修改根目录下的权限 @ admin = rw //admin组用户的权限为 读写 suvan = rw //suvan 用户的权限为读写 * = r //其他用户的权限为只读 |
3.passwd //创建或修改用户密码
1 |
suvan = 123456 //用户名suvan的密码为suvan |
二、设置开机启动
/etc/rc.local文件中添加一行:
1 |
svnserve -d -r /data/svn |
三、启动SVN服务
1 |
#svnserve -d -r /data/svn |
svn服务默认端口为3690,可以使用 netstat -antlp|grep svnserve命令查看服务启动是否成功,如果已经有svn在运行,可换一个端口运行:
1 |
svnserve -d -r /data/svn --listen-port 3391 |
这样同一台服务器可以运行多个svnserve
2.启动成功后就可以连接了
windows系统可以用TortoiseSVN, 地址: svn://ip(或者域名)/suvan
mac系统用命令行连接: svn checkout svn://ip(或者域名)/suvan,也可用可视化svn工具。