Linux centOS 下SVNversion的安装配置 开机启动 端口开放
使用redhat系linux的工具 yum
1.检查是否已安装
rpm -qa subversion
如果要卸载旧版本:
yum remove subversion
2.安装
yum install subversion
3.检查是否安装成功
svnserve --version
如果成功会输出版本号
4.创建仓库目录
例如:
mkdir /home/svn/game
5.创建项目
svnadmin create /home/svn/game
6.检查是否创建成功
cd /home/svn/game
如果成功,game目录下会多出几个文件夹
7.进入conf目录会看到3个配置文件,生成的文件中都有英文注释说明
修改这3个文件
passwd:用户密码
[users] dev=123456
authz:用户权限配置
[/] dev=rw
svnserve.conf:配置
#匿名访问者权限 anon-access = none #验证用户权限 auth-access = write #密码文件地址/home/svn/game/passwd password-db = passwd #权限文件地址/home/svn/game/passwd authz-db = authz #项目名称(UUID) realm = My First Repository
还有其他的用户组啊、读写权限的,需要细细规划参考文档,这里就不写了。
8.开放svn端口
默认是3690端口,你也可以用别的。已开启的跳过这一步
修改
iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
保存
/etc/rc.d/init.d/iptables save
或
service iptables save
重启
service iptables restart
查看
/etc/init.d/iptables status
9.启动SVN服务
#守护进程启动svn,目录指定的是总目录svn,下面可以有很多的版本库如(game,ajaxweb)
svnserve -d -r /home/svn
#-d:守护进程 -r:svn根目录
停止用SVN命令 killall svnserve 或kill 进程
客户端用的都是windows下的gui 工具TortoiseSVN,不再赘述。
svn的地址假设服务端IP为192.168.1.100,那么如下设置后game的访问目录如下,不需要加svn。
svn://192.168.1.100/game
感谢码农往事,参考了他的博文
10、开机启动
这一步视服务器情况而定,本来我也是不需要设的,奈何服务器设置了自动重启,虽然关了linux的自动重启,为了包装任何时候能用svn,还是设置了开机启动。
在你想存放的地方编写文件,比如svnboot.sh:
#!/bin/bash
/usr/bin/svnserve -d -r /home/svn/
设置权限
chmod 777 svnboot.sh
在下面的文件/etc/rc.d/rc.local末尾添加脚本的路径:
/home/svn/svnboot.sh
重启Linux服务器,重启后查看svn服务器是否已经开启
# ps -ef|grep svnserve
如果显示以下信息表示svn已经开启了:
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN