Linux远程svn自动更新项目
- 爵特猛
- 2021-1-30 18:11
- 其它
- 832
Web服务器地址:192.168.1.10
web项目地址:/home/www/test/hsj
SVN服务器地址:192.168.1.11
SVN版本库地址:/home/svn_library/live
由于SVN和web并不在同一服务器上,所以涉及到ssh登录,并且需要设置免密钥登录
一、授权SVN服务器面密钥登录到web服务器
1.在SVN服务器上生成密钥文件:
ssh-keygen -t rsa
连续回车即可,生成的文件位于/root/.ssh/ 下,查看需要ls -a ( Linux命令大全)
2.复制密钥文件到web服务器上:
在SVN服务器上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.1.10
该操作需要输入web服务器root密码
3.复制完成后/root/.ssh 下会生成一个known_hosts 文件,里面记录了授权信息(加密的)
二、编辑post-commit 文件
1.复制post-commit.tmpl
cp post-commit.tmpl post-commit vim post-commit
将下方内容写入post-commit
REPOS="$1" REV="$2" #需要更新多个目录,则复制更改要更新的目录即可 sshpass -p MyrnssbbCg! ssh root@192.168.1.10 "export.utf8;svn update --username server --password server123456 --no-auth-cache /home/www/test/hsj"
本文为爵特猛原创文章,转载无需和我联系,但请注明来自爵特猛博客www.juetemeng.com
爵特猛