一.安装篇
centos下yum安装
yum install subversion
查看安装是否成功:
svnserve --version
二.配置篇
创建svn版本库目录
mkdir -p /opt/svn
cd /opt/svn
创建项目jsedu114
svnadmin create jsedu114
cd jsedu114/conf #进入项目配置目录
编辑项目配置,vim svnserve.conf
anon-access=none
auth-access=write
authz-db = authz
password-db=passwd
#修改的文件前面不能有空格
添加svn用户及密码,vim passwd
[users]
jsedu114 = Aa123456
配置用户访问权限,vim authz,在后面添加
[/]
jsedu114=rw
启动svn服务(默认状态下不用!)
svnserve -d -r /opt/svn
若仍无法svn访问,可配置防火墙端口
firewall-cmd --permanent --add-port=3690/tcp
firewall-cmd --reload
当然服务如果已经启动,如果改动配置东西,如果想重新启动,需要先将svn的服务杀掉,如下操作,然后再进行如上的启动操作,或者重启服务“service iptables restart”
[root@izwz91h49n3mj8r232gqwez subversion]# ps -ef|grep svn
root 6463 1 0 16:25 ? 00:00:00 svnserve -d -r demo/
root 6478 4417 0 16:28 pts/1 00:00:00 grep --color=auto svn
[root@izwz91h49n3mj8r232gqwez subversion]# kill -9 6463
centos开机自动启动SVN服务的方法
1、编辑rc.local文件
vi /etc/rc.d/rc.local
2、加入如下启动命令
/usr/bin/svnserve -d -r /opt/svn
三.SVN客户端连接
windows下安装 Tortoisesvn 连接 svn://192.168.1.254/jsedu114
四.svn 钩子与网站同步
(svn checkout可以简写为co)检出文件并且重命名文件夹
svn co svn://192.168.1.254/jsedu114 /opt/www
到/opt/svn/chenlong/hooks目录
cp post-commit.tmpl post-commit
chmod 755 post-commit
vi post-commit
#!/bin/bash
REPOS="$1"
REV="$2"
export LANG=zh_CN.UTF-8
BASEPATH=/opt/www/jsedu114
WEBPATH="$BASEPATH/"
svn update $WEBPATH --username chenlong --password f8e540a6l --no-auth-cache
echo `date`,`whoami`,$REPOS,$REV >> /tmp/svn_hook.log
exit 0
五、如果缷载:
yum remove subversion