ubuntu下搭建svn服务器并使用钩子自动更新文件
今天尝试一下在ubuntu上搭建svn服务
首先先安装svn
sudo apt-get install subversion
验证svn是否安装成功
svn --version
svn, version 1.9.3 //显示版本即安装成功
建立版本库/home/svn/project
sudo mkdir -p /home/svn/project && sudo svnadmin create /home/svn/project
进入/home/svn/project/conf/目录下修改配置文件
passwd文件最后添加
test = 123456
svnserver.conf取消这四行的注释
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
authz添加test用户添加读写权限
[/]
test = rw
完成启动svn服务
sudo svnserve -d -r /home/svn
关闭svn服务
pkill svnserve
连接线上svn
checkout出一份并且新建一个1.txt文件提交
现在我们已经能开心的往服务器上提交代码了,之后我们进行代码自动部署的设置。
在/home/svn/project/hooks/下新建post-commit文件添加权限
cd /home/svn/project/hooks/ && sudo cp post-commit.tmpl post-commit && sudo chmod +x post-commit
在新建的post/commit文件下添加下列添加下列内容
REPOS="$1"
REV="$2"
export LANG="zh_CN.UTF-8"
export LC_CTYPE="zh_CN.UTF-8"
/usr/bin/svn update "/data/www/project/" --username test --password 123456 --non-interactive
去/data/www下拷出一份代码
svn checkout svn://127.0.0.1/project
接着本地在新建一个2.txt文件并提交,去线上查看
cd project/ && ls
线上自动生成了新提交的2.txt文件。至此完成了服务器的svn搭建并自动部署代码。
上一篇: python项目部署