文档章节

如何借助 svn update 自动更新线上的web

whoru
 whoru
发布于 2016/04/12 19:32
字数 427
阅读 95
收藏 3

    1.进入到你创建的版本库目录下面,目录结构大致如下

drwxr-xr-x 2 root root 4096 Mar 16 00:18 conf
drwxr-sr-x 6 root root 4096 Apr 12 15:11 db
-r--r--r-- 1 root root    2 Mar 16 00:12 format
drwxr-xr-x 2 root root 4096 Mar 23 17:30 hooks
drwxr-xr-x 2 root root 4096 Mar 16 00:12 locks
-rw-r--r-- 1 root root  229 Mar 16 00:12 README.txt

    2. 进入 hooks 目录下,这里就是我们能够使用的所有钩子。要实现我的需求,只需要 post-commit.tmpl 这一个,也就是使用 svn 客户端成功提交到仓库之后要执行的操作

[root@xxxxxx hooks]# ls -l
total 40
-rw-r--r-- 1 root root 1977 Mar 22 17:15 post-commit.tmpl
-rw-r--r-- 1 root root 1638 Mar 16 00:12 post-lock.tmpl
-rw-r--r-- 1 root root 2289 Mar 16 00:12 post-revprop-change.tmpl
-rw-r--r-- 1 root root 1567 Mar 16 00:12 post-unlock.tmpl
-rw-r--r-- 1 root root 3432 Mar 16 00:12 pre-commit.tmpl
-rw-r--r-- 1 root root 2416 Mar 16 00:12 pre-lock.tmpl
-rw-r--r-- 1 root root 2786 Mar 16 00:12 pre-revprop-change.tmpl
-rw-r--r-- 1 root root 2106 Mar 16 00:12 pre-unlock.tmpl
-rw-r--r-- 1 root root 2780 Mar 16 00:12 start-commit.tmpl

    3.之后如下操作

[root@xxxxxx hooks]# cp post-commit.tmpl post-commit
[root@xxxxxx hooks]# vim post-commit

    4.定位到文件底部(G),去除自带的使用示例,根据个人需求,追加如下内容 保存退出

SVN=/usr/local/bin/svn
WEB=/www/demo.xxx.net/

export.UTF-8
$SVN update $WEB --username xxoo--password xxoo
chown -Rf www:www $WEB
chmod -Rf 755 $WEB

    5.最后赋予 post-commit 可执行权限

[root@xxxxxx hooks]# chmod u+x post-commit


© 著作权归作者所有

共有 人打赏支持
whoru
粉丝 14
博文 127
码字总数 55201
作品 0
济南
高级程序员
用PHP写的SVN post-commit

SVN提交代码时自动将发生改变的文件和目录更新到web目录: 1.根据更新svn日志,自动在/data/svn-update/mmoyu/目录update发生改变的分支目录 2.根据更新svn日志,从/data/svn-update/mmoyu/...

大道至簡
2014/10/08
0
0
linux下svn的常用操作命令总结

导入代码文件到 repo 版本库 我的代码文件存放在 /var/www/html/; svn代码版本库的路径 /application/svndata/repo (也就是刚刚我们创建的版本库的位置); 执行导入命令: svn import /va...

浅景尘
06/26
0
0
linux/centos svn搭建及网站同步更新

一 搭建篇 yum install -y subversion svnserve --version 二 创建项目仓库 mkdir /var/svn cd /var/svn svnadmin create /var/svn/[项目名] 三 配置项目仓库 cd /var/svn/[项目名]/conf 1.......

xiaogg
09/03
0
0
SVN 使用hooks 自动更新到远程的web目录下

环境: A机器192.168.1.10 作为SVN的服务端 (环境 apache svn ssh) 环境: B机器 192.168.1.20 (环境 nginx php ssh svn 作为客户端) 目的:开发人员上传代码到A机器时, 会自动更新到B机器上ngi...

求学ing
2013/09/24
0
3
Ubuntu下SVN安装和配置

一、SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home/xiaozhe/svn/ $ sudo mkdir mypro 3.创建svn文件仓库 $ sudo svnad......

charley158
2013/12/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

你为什么在Redis里读到了本应过期的数据

一个事故的故事 晚上睡的正香突然被电话吵醒,对面是开发焦急的声音:我们的程序在访问redis的时候读到了本应过期的key导致整个业务逻辑出了问题,需要马上解决。 看到这里你可能会想:这是不...

IT--小哥
今天
2
0
祝大家节日快乐,阖家幸福! centos GnuTLS 漏洞

yum update -y gnutls 修复了GnuTLS 漏洞。更新到最新 gnutls.x86_64 0:2.12.23-22.el6 版本

yizhichao
昨天
5
0
Scrapy 1.5.0之选择器

构造选择器 Scrapy选择器是通过文本(Text)或 TextResponse 对象构造的 Selector 类的实例。 它根据输入类型自动选择最佳的解析规则(XML vs HTML): >>> from scrapy.selector import Sele...

Eappo_Geng
昨天
4
0
Windows下Git多账号配置,同一电脑多个ssh-key的管理

Windows下Git多账号配置,同一电脑多个ssh-key的管理   这一篇文章是对上一篇文章《Git-TortoiseGit完整配置流程》的拓展,所以需要对上一篇文章有所了解,当然直接往下看也可以,其中也有...

morpheusWB
昨天
5
0
中秋快乐!!!

HiBlock
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部