[转]svn提交自动同步到web服务器
参考博文:http://my.oschina.net/wddqing/blog/201567
同步程序思路:用户提交程序到SVN,SVN触发hooks,按不同的hooks进行处理,这里用到的是post-commit,利用post-commit到代码检出到SVN服务器的本地硬盘目录,再通过rsync同步到远程的WEB服务器上。
知识点:
1、SVN的hooks
# start-commit 提交前触发事务
# pre-commit 提交完成前触发事务
# post-commit 提交完成时触发事务
# pre-revprop-change 版本属性修改前触发事务
# post-revprop-change 版本属性修改后触发事务
通过上面这些名称编写的脚本就就可以实现多种功能了,相当强大。
2、同步命令rsync的具体参数使用
3、具有基个语言的编程能力bash python perl都可以实现
post-commit具体实现细节
post-commit脚本
编辑文件:sudo vim /home/svn/fitness/hooks/post-commit
注意:编辑完成post-commit后,执行:sudo chmod 755 post-commit
内容:
#!/bin/sh
export LANG=zh_CN.UTF-8
sudo /usr/bin/svn update /var/www/www --username mirze --password 123456
REPOS="$1"
REV="$2"
export LANG=zh_CN.UTF- #设定语言,根据系统语言设置,如果是UTF- 就设置为 LANG=zh_CN.UTF- SVN_PATH=/usr/bin/svn
SVN_USER=user
SVN_PASD=passwd
WEB_PATH=/var/www/website/weixin
WEB_IP="192.168.197.1"
RSYNC=rsync
LOG_PATH=/tmp/svn_update.log svn export "svn://192.168.197.1/test" $WEB_PATH --username $SVN_USER --password $SVN_PASD --force
chown -R yzxx:yzxx /var/www/website/weixin/
chmod -R /var/www/website/weixin/\#runtime
这个是已提交就自动更新覆盖原有路径。
还有一个是需要用户提交时输入关键字;例如:auto-load,才更新,哪个博文找不到了,找到后再贴上!
linux下svn定时更新项目(这个作为参考,放到服务器上不合适,更新太费资源) http://blog.sina.com.cn/s/blog_920dea7a01014nm8.html
有个复杂的还没看:http://os.51cto.com/art/201410/454887.htm
SVN命令使用详解 http://blog.sina.com.cn/s/blog_963453200101eiuq.html
[转]svn提交自动同步到web服务器的更多相关文章
- svn提交自动同步到web目录
环境:CentOS6.5 测试线 svn和web服务器在同一台机器上 SVN版本1.6 情景:在测试环境下,开发部提出希望提交到SVN的代码能自动同步到WEB站点目录下,解决每次都要传双份这 ...
- svn服务器配置以及自动同步到web服务器
感觉再不用svn就真的老了. 安装 yum install subversion 新建repo mkdir -p /opt/svn/myrepo svnadmin create /opt/svn/my ...
- CentOS 创建SVN 服务器,并且自动同步到WEB 目录
CentOS 创建SVN 服务器,并且自动同步到WEB 目录 标签: centossvnsubversion服务器 2013-12-06 10:09 5492人阅读 评论(0) 收藏 举报 分类: ...
- Centos7下搭建SVN服务,本地提交代码自动同步到WEB目录
1.安装SVN服务[root@bogon ~]# yum -y install subversion 2.查看svnserve安装目录[root@bogon ~]# whereis svnserves ...
- LINUX安装SVN+添加自动同步+远程下载最新代码
LINUX安装SVN+添加自动同步+远程下载最新代码---------------------1. 新建一个用户:svnroot ,以下操作非特别说明皆为root用户操作--------------- ...
- RubyMain2016.2配置自动同步代码到服务器功能
可以参考rubymain帮助文档:https://www.jetbrains.com/help/ruby/deployment-in-rubymine.html 在rubymain工具的Tools&g ...
- CentOS下安装配置SVN服务器并自动同步到web目录
一.安装 yum install subversion测试是否安装成功 /usr/bin/svnserve --version如提示以下内容,说明已安装成功 svnserve,版本 1.6.11 (r ...
- 提交代码到远程GIT仓库,代码自动同步到远程服务器上。
现在一般都会通过github,gitlab,gitee来管理我们的代码.我们希望只要我本地push了代码,远程服务器能自动拉取git仓库的代码,进行同步. 这就需要用到各仓库为我们提供的webhook ...
- Windows Server配置Jenkins,实现监测SVN提交自动构建.net4.5的项目
1,持续集成 概念:http://baike.baidu.com/view/5253255.htm,对于大多数人而言,自动构建/自动测试/自动部署,已经很发挥它的价值了.选择上: 推荐jenkins, ...
随机推荐
- phpmyadmin出现空password登录被禁止
在Windows或者Linux下mysql安装后默认的password为空,又当我们又安装了mysql的管理工具 phpmyadmin后登陆时出现"空password登陆呗禁止(參见同意pa ...
- JS中onload的各种使用
1.最简单的调用方式 直接写到html的body标签里面,如: <html> <body onload="func()"> </body> &l ...
- Android滑动事件冲突
首先,我们假设这样一个场景:一个ViewPager里面嵌套一个ViewPager,内部滑动方向和外部滑动方向一样时,该怎么解决这一冲突呢? 针对滑动冲突这里给出两种解决方案:外部拦截法,内部拦截法. ...
- java的大数类
java中的大数类,真的很方便,不用自己再写计算的函数,先写一个简单的例子,以后再补充 注意大数初始化的时候,参数十字符型的,如果传进去的变量十一个数字,需要加上一个空字符即:+"" ...
- 比赛F-F Perpetuum Mobile
比赛F-F Perpetuum Mobile 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=86640#problem/ ...
- 去掉word2007回车后自动编号
1. 在使用word自动编号时,回车续写上一编号内容可能会行距很宽,这时候使用shift+回车不会自动下一编号,而且是正常行距 取消回车自动编号: 打开Word文档,单击菜单栏上的[格式]→[自动套用 ...
- 省部级干部list
省部级干部表 省(市.自治区) 省(市)委书记 省(市)人大主任 省(市)长 省(市)政协主席 北京市 郭金龙 杜德印 王安顺 吉林 天津市 黄兴国 肖怀远 黄兴国 臧献甫 上海市 韩正 殷一璀(女) ...
- gdb图形化调试工具总结
gdb除了命令行方式等的调试之外,还有图形化的调试工具,下面列举一些供参考 1:insight 2: ddd 3: kgdb 4: xxgdb 其它的工具欢迎补充
- java学习之IO对象流
//注意对象类要打标记实现Serializable接口 package com.gh; import java.io.FileInputStream; import java.io.FileNotFo ...
- lines(最大区间和)
lines Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...