SVN版本库搭建

来源:互联网 发布:企业注册的淘宝号 编辑:程序博客网 时间:2024/05/29 03:46
1:安装svn服务端  yum install subversion
2:创建版本库:  svnadmin create /home/svn/myrepos  //目录可以自定义
3:配置svnserve
  上述版本库/home/myrepos建立后在文件夹下会生成conf文件夹,进入/home/svn/myrepos/conf下面会有下面3个文件
authz passwd svnserve.conf
我们依次修改
3.1,svnserve.conf修改以下几个部分:
            anon-access = none
   auth-access = none
   auth-access = write
     password-db = passwd
   authz-db = authz
   realm = /home/svn/myrepos


3.2,passwd修改为:


   [users]  
   username = password    //这里的username和password自己设置  (多用户配置)


3.3,authz最后加上以下两行(这两行解决了 SVN客户端解决authorization failed问题)


   [/]
   username = rw   (进行多用户配置)
4:启动svnserve即可
    svnserve -d -r /home/svn/myrepos/  (如果你是配置第一个版本库是没有问题的)
    如果多版本库则
           (用多端口启动即可)     
        svnserve -d --listen-port 3691 -r /home/svn/myrepos    
        SVN服务器默认端口3690, 用命令查看下该端口是否被占用啦:netstat -antp | grep svnserve ), 然后用3691端口启动就OK啦 
        (配置完需要重启  ps -ef | grep 端口号      kill -9 进程号     再次启动就ok了)
5:客服端使用:
   svn checkout svn://服务器ip地址/myrepos/


   (这时就可以在本地测试进行代码提交  测试用户名 密码)






svn钩子自动更新项目文件到web目录


1:cd /home/svn/myrepos/hooks
   cp post-commit.tmpl ./post-commit
   vim post-commit   编辑,添加以下代码
    #!/bin/sh
export LANG=en_US.UTF-8
/usr/bin/svn update --username 用户名 --password 密码 /usr/share/nginx/html/carsysjx(项目目录 根据需求自己定义)


2:查看项目根目录所属组  ll -a
    chown root:root /home/svn/myrepos/hooks/post-commit   (修改post-commit文件)
    chmod +x /home/svn/myrepos/hooks/post-commit  (给post-commit文件添加上可执行权限即可)


3: 可以配置日志文件 
REPOS="$1"
REV="$2"
    LOG_PATH=/tmp/svn.log
  echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH   (将此代码添加到post-commit中   未测试)


    解释:whoami #执行此程序的用户
 REPOS="$1" #svn项目绝对路径值
 REV="$2" #最新版本号


附上链接:可参考  http://www.cnblogs.com/xuyk/p/6024757.html    
 http://www.blogdaren.com/post-1745.html


 接下来就可以尽情的畅游svn了  ................................................省略1万个字
原创粉丝点击