svn 安装及更新web库

安装:

  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服务

    

 注:由于之前弄的时候离现在发表的时间有点远,错误实例也没记下来,如果按照我的教程发现有问题的情况,可以评论,或者自己先百度一下

原文地址:https://www.cnblogs.com/zwb121/p/9987553.html