提交一个TEST文件夹

实现本地svn目录同步时,服务器的相应目录保持自动同步

但是服务器上并没有显示

实现本地svn目录同步时,服务器的相应目录保持自动同步

而新检出的目录却有

实现本地svn目录同步时,服务器的相应目录保持自动同步

这个时候需要手动去update才会显示,而不可能每次都去update,所以,就用到配置自动更新

 

1、创建svn目录:mkdir /var/SvnProject
实现本地svn目录同步时,服务器的相应目录保持自动同步

 

2、从服务器的本地svn上checkout最新版本代码到/var/SvnProject文件夹,注意本地svn服务器地址和端口号是在启动svn服务时就设置的,根据自己的配置修改
svn co svn://localhost:6390/test /var/SvnProject --username 'admin' --password '123@qwe'

实现本地svn目录同步时,服务器的相应目录保持自动同步

 

3、在svn代码仓库的对应项目目录下创建post-commit文件,如果文件已存在,请清空文件内容后再编辑

cd /var/svn/svnrepos/test

vim post-commit

实现本地svn目录同步时,服务器的相应目录保持自动同步

 

4、在该文件里添加如下代码,保存
#!/bin/sh
export LANG=en_US.utf8
SVN_PATH=/usr/bin/svn  # svn启动目录
WEB_PATH=/var/SvnProject  # 自己创建的svn目录
$SVN_PATH update $WEB_PATH --username 'uname' --password 'pwd' --no-auth-cache

实现本地svn目录同步时,服务器的相应目录保持自动同步


5、给post-commit添加执行权限:chmod +x post-commit

实现本地svn目录同步时,服务器的相应目录保持自动同步

 

6、此时,本地svn目录同步时,服务器的相应目录也会被更新,保持自动同步

 

为了自动化方便,也可以把 post-commit放到/var/SvnProject下面,这样在设置jenkins命令的时候,就不用频繁切换目录

实现本地svn目录同步时,服务器的相应目录保持自动同步

更新

实现本地svn目录同步时,服务器的相应目录保持自动同步

实现本地svn目录同步时,服务器的相应目录保持自动同步

这样就可以直接进目录进行脚本驱动了

实现本地svn目录同步时,服务器的相应目录保持自动同步

实现本地svn目录同步时,服务器的相应目录保持自动同步

 

jenkins配置:

实现本地svn目录同步时,服务器的相应目录保持自动同步

构建看一下

实现本地svn目录同步时,服务器的相应目录保持自动同步

实现本地svn目录同步时,服务器的相应目录保持自动同步

 

相关文章: