Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->Linux程序设计 ->正文

怎么样在Subversion中运行hook脚本

来源:linux.chinaunix.net 作者:builder.com.cn  时间:2007-04-22 点击: [收藏] [投稿]

  Subversion是一个强大的版本控制系统,特别是它能够轻松地处理库管理进程中在各个点上的数据。在进行提交后、或者进行提交前,或锁定、或解锁文件中,或者在其它情况下,你都能拥有脚本句柄数据。所有的这些都是通过hook实现的,hook是subversion库结构中的一部分。Hook 由一个库事件来触发的。例如,如果你有一个subversion库存放在/subversion/repos/packages下,那么你的hook将被存放在/subversion/repos/packages/hooks目录下。

  在这个hook目录下存放着大量的临时文件。这些文件只是作为例子来存在。所以如果你想写一个脚本能在每次提交后,把subversion数据用e -mail发送给你的话,你应该拷贝post-commit.tmpl到post-commit中,把它变为可执行的,并按照你的需要去编辑它。

  这些脚本能从subversion网站上获得,同时也有些其它用户提供的脚本和工具。你能在subversion.tigris.org/tools_contrib.html上浏览到许多这样的脚本。目前最感兴趣的是邮件提交的(post-commit e-mail)脚本commit-email.pl。把这个文件下载下来,并把它放在/usr/local/bin/下面,然后使它变成可执行的。同时在 hooks/post-commit脚本中,在该文件末尾增加上以下内容:

  REPOS=""

  REV=""

  /usr/local/bin/commit-email.pl "$REPOS" "$REV" --from svn@myhost.com -s

  "SVN commit in packages" joe@myhost.com

  这个将执行的commit-e-mail.pl脚本会带有一些参数,也就是库名和你做的修订。它将按照指定的主题路线从 svn@myhost.com网站上发送e-mail到joe@myhost.com上,joe@myhost.com网站上有些指定的用户或者邮件列表。

  如果你想在站点上查看其它的脚本,你可以在版本控制软件库的管理器中看到许多有趣的脚本。在整个数据被提交到subversion之前,这些脚本能够做某些检查,比如,各种预提交检查脚本。



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:用开源软件Subversion进行个人文档管理   下一篇:深入浅出 Linux设备驱动异步通知介绍

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号