首页 » SEO优化 » phpsvn钩子技巧_SVN提交时强制注释

phpsvn钩子技巧_SVN提交时强制注释

访客 2024-11-27 0

扫一扫用手机浏览

文章目录 [+]

$SVNLOOK log -t "$TXN" "$REPOS" | \ grep "[a-zA-Z0-9]" > /dev/null || exit 1commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1

这三行注释掉(前面加#符号),在此位置添加如下几行:

LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`if [ "$LOGMSG" -lt 5 ];#哀求注释不能少于5个字符,您可自定义then echo -e "\nLog message cann't be empty! you must input more than 5 chars as comment!." 1>&2 exit 1fi

保存,退出。
给pre-commit添加可实行权限:

phpsvn钩子技巧_SVN提交时强制注释

chmod +x pre-commit

这里记得修正 $SVNLOOK=(svnlook的路径,/csvn的安装目录/bin/svnlook)配置结束,可以利用了。
方法2:这两天把项目的开拓机迁移到了linux环境,用python重写了原来的svn hook,保存为pre-commit放到svn的hooks目录下,chmod +x pre-commit加上实行权限即可。
windows下写SVN钩子比较麻烦,只能是批处理或者exe,linux下随便用什么脚本措辞写都可以,只要 加上可实行权限就行了。

phpsvn钩子技巧_SVN提交时强制注释
(图片来自网络侵删)

#! /usr/bin/env python# -- coding: utf-8 -- """SVN提交前检讨钩子功能: 1、逼迫填写提交注释,内容10字节以上 2、逼迫注释格式为:xxx:xxx 3、提交文件检讨,过滤不许可提交的文件作者: 李思杰 <lsj86@qq.com> <2012/04/28>"""import sysimport osimport redef main(argv): (repos, txn) = argv badlist = (".config\.php$", "./php/cache", ".test", "config\.js$","^.\.db$") message = "".join(os.popen("/usr/bin/svnlook log '%s' -t '%s'" % (repos, txn)).readlines()).strip() if len(message) < 10: sys.stderr.write("请输入本次提交的修正内容,10字节以上。
"); sys.exit(1) if message.find(':') < 1: sys.stderr.write("请按规范填写注释,格式为:功能名: 修正解释。
"); sys.exit(1) changelist = os.popen("/usr/bin/svnlook changed '%s' -t '%s'" % (repos, txn)).readlines() for line in changelist: for pattern in badlist: if re.search(pattern, line): sys.stderr.write("请不要把 %s 加入版本库。
" % line[1:].strip()); sys.exit(1) sys.exit(0)if __name__ == "__main__": main(sys.argv[1:])

2、windows逼迫注释脚本

@echo off setlocal set REPOS=%1 set TXN=%2 rem 担保输入8个字符 svnlook log %REPOS% -t %TXN% | findstr "........" > nul if %errorlevel% gtr 0 goto :err_actionrem 过滤空格字符svnlook log %REPOS% -t %TXN% | findstr /ic:" " > nul if %errorlevel% gtr 0 goto :success :err_action echo 你本次版本提交未填写任何变更的日志解释信息. >&2 echo 请补充日志解释信息后再提交代码,例如:功能解释等. >&2 echo 输入的日志信息不少于8个字符解释(或4个汉字),感激! >&2 echo 禁止空格数据 >&2 goto :err_exit:err_exit exit 1 :success exit 0

标签:

相关文章

今日头条算法岗三面算法工程师的面试之路

大数据和人工智能技术逐渐成为各行各业的热门话题。今日头条作为中国领先的资讯平台,其算法岗位一直是求职者争相竞逐的焦点。本文将针对今...

SEO优化 2025-01-31 阅读3 评论0

今日头条算法如何打造个化内容推荐

在移动互联网时代,信息爆炸已成为常态。如何在海量信息中找到自己感兴趣的内容,成为了一个亟待解决的问题。今日头条作为一款备受瞩目的新...

SEO优化 2025-01-31 阅读1 评论0

今日头条算法推荐其弊端与反思

算法推荐已经成为各大平台的核心竞争力。今日头条作为国内领先的资讯平台,凭借其强大的算法推荐系统,吸引了大量用户。在享受算法带来的便...

SEO优化 2025-01-31 阅读1 评论0

今日头条算法思维导图信息推荐的奥秘

信息传播速度越来越快,用户对信息的需求也越来越多样化。今日头条作为一款备受关注的新闻资讯平台,其背后的算法推荐机制一直是业界关注的...

SEO优化 2025-01-31 阅读1 评论0