使用subversion过程中,有时候提交后发现message写的有点问题。如何修改呢?
默认情况下,subversion server是不允许客户端修改提交后的任何东西的。
实在要修改的话,首先要修改一server的hook,让server允许修改才可以。
1. 在windows下的subversion server,在项目hooks目录下新建一个pre-revprop-change.bat文件,
[注意:原来的模板文件是linux的脚本。]
文件的内容如下:
if "%4" == "svn:log" exit 0 #如果svn客户端提交命令时第4个参数是svn:log的话,就返回0,意思是同意这个修改
echo "Changing revision properities other than svn:log is prohibited" >&2 #否则,就提交除了svn:log外,其它任何属性都是不允许修改的
exit 1 #不允许修改的项返回1,意思是不同意其修改
2. linux下的subversion server的pre-revprop-change文件如下[注意:没有bat啦]
#!/bin/sh
if [ "$4" = "svn:log" ]; then exit 0; fi
echo "Changing revision properities other than svn:log is prohibited" >&2
exit 1
看过shell脚本的一看就明白啦
3. 修改完了hook文件,不需要重新启动service
4. 客户端执行修改log的命令,在svn的checkout目录下执行
svn propedit -r 'HEAD' --revprop svn:log
这时会读出原来的log,让你修改