安装:
apt-get update //更新apt-get库
apt-get install subversion 安装SVN
mkdir /home/svn 创建svn目录
mkdir /home/svn/dappvue 创建svn仓库 dappvue是项目名(自己定)
chmod -R 777 /home/svn/dappvue 赋值最高权限
svnadmin create /home/svn/dappvue 创建的目录和文件
配置:
1、vim /home/svn/dappvue/conf/svnserve.conf,(这里的dappvue 是上面建的svn仓库,名字最好跟自己的项目一样)去掉红色框中的 # 和 空格 , 保存退出 结果如下:
2、vim /home/svn/dappvue/conf/passwd ,底部添加svn管理用户和密码,多个账户换行添加即可,结果如下:
3、vim /home/svn/dappvue/conf/authz ,底部添加组和权限,结果如下:
说明:admin=zwb,test... 是用户组,zwb是用户,多个用户用逗号隔开
[/] 根目录认证规则 (设置同步检出必须存在)
@admin=rw 给admin组读写权限
*=r 给其他用户或组只读权限
5、重启svn
killall svnserve 关闭svn服务
svnserve -d -r /home/svn/ 启动svn服务
检出:
必须在指定目录下先检出再配置
svn co svn://127.0.0.1/dappvue --username zwb --password 123456
说明:127.0.0.1 svn库IP
dappvue 仓库名称
--username zwb --password 123456 zwb svn用户名 123456 zwb密码
配置svn 同步web目录
1、使用SVN中post-commit 实现自动实时从svn中检出文件并同步到web站点根目录(必须先检出)
cd /home/svn/dappvue/hooks/
cp post-commit.tmpl post-commit
vim post-commit 添加以下代码:
REPOS="$1" REV="$2" export LANG=en_US.UTF-8 SVN_PATH=/usr/bin #svn路径 WEB_PATH=/home/wwwroot/dappvue/ #注意这里是指到库里面(检出的位置) SVN_USER=zwb #svn用户名 SVN_PASS=123456 #用户密码 LOG_PATH=/tmp/svn.log #日志目录 echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH echo `whoami`,$REPOS,$REV >> $LOG_PATH $SVN_PATH/svn update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATH
结果如下:
2、保存退出
3、重启svn
killall svnserve 关闭svn服务
svnserve -d -r /home/svn/ 启动svn服务
注:由于之前弄的时候离现在发表的时间有点远,错误实例也没记下来,如果按照我的教程发现有问题的情况,可以评论,或者自己先百度一下