CentOS 7 源码包安装SVN及使用

一、准备工作

         将源码包上传到服务器, 我这边使用的WinSCP.

         subversion-1.6.1.tar.gz

         subversion-deps-1.6.1.tar.gz

         // 安装依赖包

         yum install -y gcc openssl openssl-devel expat

二、安装

         // 先解压两个源码包

         tar -zxvf subversion-1.6.1.tar.gz

         tar -zxvf subversion-deps-1.6.1.tar.gz

         // 进入目录, 先进行编译, 不指定路径,看有没有报错.

         cd /lnmp/subversion-1.6.1.tar.gz

         ./configure

         // 如果出现以下提示, 代表编译没有问题

   

         // 指定路径进行编译安装

         ./configure --prefix=/usr/local/svn/

         make && make install

   

     

         // 安装成功

   

         // 进入SVN目录

         cd /usr/local/svn

         ls

   

         // 查看SVN版本

         /usr/local/svn/bin/svnserve --version

   

         // 将SVN添加到环境变量中

         vim /etc/profile

         // 将下面语句添加到后面

         export PATH="$PATH:/usr/local/svn/bin"

   

         // 刷新权限

         source /etc/profile

   

         // 或者直接输入命令将SVN添加到环境变量中

         echo "export PATH=$PATH:/usr/local/svn/bin/" >> /etc/profile

         source /etc/profile

三、建立一个测试仓库

         // 新建一个版本库

         mkdir -p /data/svn/svntest

         svnadmin create /data/svn/svntest/

   

         // 修改配置文件

         cd /data/svn/svntest/conf

         ll

   

         vim svnserve.conf

         // 将下面语句去掉注销并修改,  保存退出

         anon-access = none        // 使非授权用户无法访问

         auth-access = write                   // 使授权用户有写权限

         password-db = passwd

         authz-db = authz               // 访问控制文件

   

  

         // 新增用户test ,密码123456

         vim passwd

         test = 123456

   

         // 指定SVN用户拥有的目录权限, rw 代表读写权限

         vim authz

   

         // 运行SVN, 如果3690端口被占用,  后面可以加上  --listen-port 3391

         svnserve -d -r /data/svn

   

四、 Windows链接

         本地安装TortoiseSVN软件后, 右击SVN检出, 输入版本库URL,点击确定

   

         输入账号密码, 点击确定

   

         完成

   

五、 SVN钩子(hooks)自动部署代码到web目录

         // 切换到SVN中hooks目录

         cd /data/svn/svntest/hooks

   

         // 复制文件

         cp post-commit.tmpl post-commit

   

         // 修改文件,添加内容, 保存退出

         vim post-commit

         export LANG=en_US.UTF-8

         /usr/local/svn/bin/svn update /usr/local/nginx/html --username test --password 123456

   

         // 给post-commit 加上执行权限

         chmod +x post-commit

         ls

   

         svn checkout svn://ip/svntest /usr/local/nginx/html --username=test --password=123456

  

         // 完成, 本地提交就可以了

原文地址:https://www.cnblogs.com/kuiba/p/9469615.html