svn强制提交备注信息】的更多相关文章

当我们用tortoisesvn,提交代码时,有很多人不喜欢写注释的,代码版本多了,根本搞不清,哪个版本改了什么东西?所以如果加一些注释的话,我们看起来,也方便很多.所以在提交的时候,我会强制要求,写注释.如果对svn的安装配置不怎么了解,请参考:linux svn安装和配置,不结合apache 1, cd /home/administrator/www/svn_test svn_test是一个代码仓库 2,mv ./hooks/pre-commit.tmpl ./hooks/pre-commit…
在svn版本库的hooks文件夹下面,复制模版pre-commit.tmpl cp pre-commit.tmpl pre-commit chmod +x pre-commit vi编辑,如下: #!/bin/sh #必须填写注释且不少于5个字 REPOS="$1" TXN="$2" # Make sure that the log message contains some text. SVNLOOK=/usr/bin/svnlook LOGMSG=`$SVNLO…
1.进入仓库project1/hooks目录,找到pre-commit.tmpl文件 cp pre-commit.tmpl pre-commit 2.编辑pre-commit文件, 将: $SVNLOOK log -t "$TXN" "$REPOS" | \     grep "[a-zA-Z0-9]" > /dev/null || exit 1  commit-access-control.pl "$REPOS" &q…
当我们用TortoiseSVN提交代码时,有很多人不喜欢写注释,导致以后代码版本多,也不清楚哪个版本到底改了什么东西.所以在提交的时候,我会强制要求添加注释.这是如何实现的?这个话题就涉及到了svn的Hooks功能的使用. 所谓hooks,可以类似理解Linux内核Netfilter框架的hook点和hook函数的概念.当用户在维护代码的过程中,其执行的相关动作正好触发了相关hook点,就会去执行对应hook点的脚本. 那么如何设置hook脚本以保证强制用户添加注释,以及允许用户修改注释呢? 1…
svn无法提交, 错误信息:Commit failed. svn: E200007: CHECKOUT can only be performed on a version resource... 解决方法: 在项目名称上电极右键-->Temp-->点击Refresh/cleanup, 再次提交就阔以了.…
在软件开发团队中总是有人忘记添加备注信息,可以通过下面方式进行设置,从而在commit时强制需要填写备注信息. 在服务端选中需要设置的项目进行设置. 选中项目右键,"所以任务"->"Mange Hooks". 选中pre-commit hook,双击或者点击"edit"按钮进行编辑. 备注:start-commit是在通过菜单触发"提交"活动后,弹出"提交"对话框前执行: pre-commit是在点击…
我发现在使用SVN中,提交时,很多人不习惯填写备注信息,虽然在培训中.平时使用时多次提醒备注信息的好处,但是效果不大,每次提交时还是不写,或者随便写两字. 所以很有必要通过系统设置强制填写足够数量的备注信息. 在VisualSVN中提供了这种功能,可以在提交之前执行一个脚本,如果提交的信息不符合要求(比如备注信息不够长),就返给客户端一个错误,提交不成功. 在VisualSVN管理器中右键点击一个项目,弹出菜单,在”所有任务”中,可以看到“Manage Hooks...”菜单,如下: 点击之后弹…
Subversion本身有很好的扩展性,用户可以通过钩子实现一些自定义的功能.所谓钩子实际上是一种事件机制,当系统执行到某个特殊事件时,会触发我们预定义的动作,这样的特殊事件在Subversion里有很多.那么SVN的钩子有哪些呢?下面简单介绍下: 服务器钩子: 锁定的2种 pre-lock 钩子在每次有人尝试锁定文件时执行.可以防止完全锁定,或者用来创建控制哪些用户可以锁定哪些路径的复杂策略.如果钩子发现已存在锁,也可以决定是否允许用户"窃取"这个锁. post-lock 在路径锁定…
#!/bin/bash REPOS="$1" TXN="$2" #svnlook路径 SVNLOOK=/usr/bin/svnlook #通过svnlook获取提交时的日志信息 LOGMSG=$( $SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c ) #判断日志长度 ]; then >& exit fi 然后将该文件放置于…
问题场景: 1 记得提交的日志信息中包含openssl,但是不记得这次提交的版本号revesion,是svn初始化后中间的某次提交: 2 svn环境的操作系统平台为Fedora, 即命令行下:而且svn log的提交记录有12659条: [root@localhost v2.1]# svn log | grep r | wc -l12659 解决办法: step1  查找提交日志信息对应的版本号 r33178 [root@localhost v2.1]# svn log --search ope…