svn 钩子应用 - svn 提交字符限制, 不能为空

一、版本库钩子

1.1 start-commit  开始提交的通知

  输入参数:传递给你钩子程序的命令行参数,顺序如下:

    1.  版本库路径

    2.  认证过的尝试提交的用户名

    3.  Depth,mergeinfo,log-revprops

1.2 pre-commit 在提交结束之前提醒

  输入参数:传递给你钩子程序的命令行参数。顺序是:

    1.     版本库路径

    2.     提交事务的名称

1.3 post-commit  成功提交的通知

  传递给你钩子程序的命令行参数,顺序为:

    1.     版本库路径

    2.     提交创建的修订版本号

1.4 pre-revprop-change –修订版本属性修改的通知

  这个钩子在修订版本属性修改之前,正常提交范围之外被执行,不像其它钩子,这个钩子默认是拒绝所有的属性修改,钩子必须要实际存在并且返回一个零值。

实现提交备注说明不少于5个中文字符;

pre-commit:

#!/bin/sh

export LANG="zh_CN.UTF-8"
REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook
LOGMSG=$($SVNLOOK log -t "$TXN" "$REPOS" | wc -c)
if [ "$LOGMSG" -lt 16 ]; then
   echo -e "Add at least 5 Chinese comments when svn commit." 1>&2
   exit 1
fi
时间: 2024-10-15 12:01:05

svn 钩子应用 - svn 提交字符限制, 不能为空的相关文章

windows下svn钩子实现每次提交更新至web目录

目的 找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹.在该文件夹中添加一个post- commit文件:当有commit动作发生时(提交到SVN Server时)就会执行这个post-commit文件,在该文件实现数据的复制. 步骤 1.找到svn服务器端某个项目仓库目录下(本例中服务端已新建一个test项目): 2.在hooks目录下新建post-commit.bat 文件,内容如下: @echo off SET REPOS

svn钩子自动化同步代码提交任务

##############################################################第一种方式:svn服务端  也是rsync的客户端web        是rsync的服务端svn服务端执行:[[email protected] ~]#sh yum-svn02.sh[[email protected] ~]#mkdir /var/www/bbs -p[[email protected] ~]#svn checkout http://192.168.13.

svn钩子的使用案例

我在这一篇博文http://lidaxia.blog.51cto.com/11588738/1928773中提到,svn钩子脚本是svn非常实用重要的功能,在工作中,会经常需要用到svn钩子脚本以实现除了svn自带功能之外的附加功能,那么这一篇博文,我们就举例演示一下,svn钩子是用来做什么的,以及怎么用. svn钩子的功能: svn钩子是一个脚本,它的具体写法和linux操作系统中shell脚本的写法并没有什么不同,通俗来说,svn钩子的功能就是当某种版本库事件(删除文件.上传文件.修改文件名

利用SVN钩子同步程序注意事项

暂时记下,此文章内容稍后验证. 前言:其实利用SVN实时同步到WEB服务器即时展现出来的文章已经到处都是,但是我在做的时候 还是有不少的小问题,很多文章也没有提出来过,还有同步也是,我还是记录下自己做过的尤其是一些细节,时间一长又会忘掉了. 同步程序思路:用户提交程序到SVN,SVN触发hooks,按不同的hooks进行处理,这里用到的是post-commit,利用post-commit到代码检出到SVN服务器的本地硬盘目录,再通过rsync同步到远程的WEB服务器上. 知识点:1.SVN的ho

svn学习之一(svn独立服务器搭建)svn钩子了解

SVN实战笔记#####################################################xingxing qq:1218761836 qq群:150181442##################################################### SVN实战  目录SVN实战    1一.SVN简介    1二.SVN运行方式    12.1 svn的访问模式3种    1三.SVN数据格式    23.1 svn 档案库数据格式    2四.

使用SVN钩子运行PHP更新服务器代码的注意事项

想通过本地提交代码到SVN服务器,同时同步测试服务器的代码 使用SVN钩子,运行服务器的php文件 代码如下: <?php header("Content-Type: text/html; charset=utf-8"); header("Cache-Control:no-cache,must-revalidate"); $username = '用户名'; $password = '密码'; $target_dir = '路径'; exec("su

svn钩子(hooks)

首先你需要搭建出自己的svn环境出来,并能成功导入导出,并且了解svn,这是看这篇文章的前提.... 出于公司开发部需要svn同步更新服务器代码,需要用到svn钩子(hooks)技术,以前从来没听过,没办法只能google了,google半天再一次认同了一个道理:天下文章一大抄啊,东拼西凑终于算是完成了(为啥说算是呢?svn太强大了我所做的只是一点点),不多说了,上例子: 我们公司的部署很简单(svn服务和web服务在同一台主机上): 开发 ----- svn(存储)---- 线上服务器 以前是

Ubuntu创建svn服务器并设置提交并更新到网站

创建svn服务器 1.首先安装SVN这个软件 apt-get install subversion 2.在home目录下创建一个名为svn的文件夹(文件夹的名字随便起) mkdir /home/svn 3.创建数据仓库(可以根据需要创建多个) svnadmin create /home/svn/test 4.启动svn网络服务 svnserve -d -r /home/svn 其中 -d 参数让 svnserve 运行在后台,-r 参数限定了数据仓库,在网络上可以访问的地址. /home/svn

svn+钩子程序+rsync 自动化同步代码

svn+钩子程序+rsync 自动化同步代码实验环境如下:     IP地址            服务器功能             路径                           同步机制192.168.3.206          svn               svn路径:/data/svn                 rsync客户端192.168.3.210          代码服务器        代码目录:/data/html               rs