解决svn的一个小问题:添加注释钩子echo中文字符
2013-02-04 19:37
405 查看
首先介绍一下svn添加注释钩子的过程
增加钩子的原因是不少开发员提交修改的时候都不写注释,导致查看历史时很费劲,也不太符合规范。有的公司要求每次提交修改时都写上bug号或者任务描述,那么如何在工具上防止开发员们不写注释呢? 那就是利用svn的pre-commit钩子可简单实现此要求。进入仓库project/hooks目录,找到pre-commit.tmpl文件,重命名,去掉后缀.tmpl。
编辑pre-commit文件,将:
$SVNLOOK log -t "$TXN" "$REPOS" |
grep "[a-zA-Z0-9]" > /dev/null || exit 1
commit-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 1
fi保存,退出。
给pre-commit添加可执行权限:
chmod +x pre-commit
配置结束,可以使用了。当有人提交的时候如果不叫注释,就会报上面的“
nLog message cann't be empty! you must input more than 5 chars as comment!.”
但是啊,好多人的英文真是有的鄙视,我自己也是,那换成中文字符可行否
这时候需要看你的检出方式来,如果你是采用svn的方式检出即svn://。。。检出的,那只需要更改将上述的
echo -e "nLog message cann't be empty! you must input more than 5 chars as comment!." 1>&2
echo出的内容改成中文就可以了
但如果是http方式检出,就需要做相应更改了,通过勤劳的手指,最后还是找到解决方式了:
修改http配置文件
把apache的配置文件里AddDefaultCharset UTF-8改为AddDefaultCharset zh_CN.UTF-8
重启,搞定附上解决问题的原地址:http://www.subversion.org.cn/bbs/archiver/?tid-2411.html本文出自 “Luffy的梦” 博客,请务必保留此出处http://huoyingdk.blog.51cto.com/3932829/1131867
增加钩子的原因是不少开发员提交修改的时候都不写注释,导致查看历史时很费劲,也不太符合规范。有的公司要求每次提交修改时都写上bug号或者任务描述,那么如何在工具上防止开发员们不写注释呢? 那就是利用svn的pre-commit钩子可简单实现此要求。进入仓库project/hooks目录,找到pre-commit.tmpl文件,重命名,去掉后缀.tmpl。
编辑pre-commit文件,将:
$SVNLOOK log -t "$TXN" "$REPOS" |
grep "[a-zA-Z0-9]" > /dev/null || exit 1
commit-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 1
fi保存,退出。
给pre-commit添加可执行权限:
chmod +x pre-commit
配置结束,可以使用了。当有人提交的时候如果不叫注释,就会报上面的“
nLog message cann't be empty! you must input more than 5 chars as comment!.”
但是啊,好多人的英文真是有的鄙视,我自己也是,那换成中文字符可行否
这时候需要看你的检出方式来,如果你是采用svn的方式检出即svn://。。。检出的,那只需要更改将上述的
echo -e "nLog message cann't be empty! you must input more than 5 chars as comment!." 1>&2
echo出的内容改成中文就可以了
但如果是http方式检出,就需要做相应更改了,通过勤劳的手指,最后还是找到解决方式了:
修改http配置文件
把apache的配置文件里AddDefaultCharset UTF-8改为AddDefaultCharset zh_CN.UTF-8
重启,搞定附上解决问题的原地址:http://www.subversion.org.cn/bbs/archiver/?tid-2411.html本文出自 “Luffy的梦” 博客,请务必保留此出处http://huoyingdk.blog.51cto.com/3932829/1131867
相关文章推荐
- 【python3问题解决】python3代码添加中文注释报错
- 今天在网络上找到了一个比较好的解决Rhythmbox中文乱码的问题的方法
- Source Insight中文注释字间距过大问题的解决
- 彻底解决jsp中文乱码问题(eclips 添加中文编码方式gb2312).
- 解决QT中中文字符乱码问题
- XAMPP集成环境下Apache端口占用、MySQL密码及其各种中文字符乱码问题解决汇总
- centOS7下mysql插入中文字符报错问题解决方法
- Spring MVC 自带的字符编码过滤器以及Tomcat字符编码设置,彻底解决中文参数乱码问题
- JavaScript(js) 前台 参数传递乱码 转码 问题--已解决! 中文字符乱码
- 在控制器中添加过滤器,解决中文由jsp到action进而到数据库传输过程中出现的乱码问题(Struts)
- VC轻松解析XML文件--CMarkup使用方法(解决解析中文字符出现乱码问题)
- 一个发邮件的类,带验证功能,可以发html内容,可以添加附件,并解决附件乱码问题。
- 关于eclipse 中文注释时中文字体太小的问题解决
- 解决ultraedit下,verilog .v 文件 中文注释乱码问题
- 两种php中文字符转拼音问题解决方法
- my.ini 文件 解决mysql无法存储中文字符问题
- MySQLdb访问mysql的中文字符问题解决之道
- 解决错误:此用户名包含无效字符,请输入有效的用户名。wordpress不能注册中文用户名的问题
- 解决Geotools中文问题的一个新的想法
- JavaScript(js) 前台 参数传递乱码 转码 问题--已解决! 中文字符乱码