【发布时间】:2011-03-19 08:30:52
【问题描述】:
我想使用一个预提交挂钩来防止开发人员在非根目录上设置 svn:mergeinfo。也就是说,我想强制 svn:mergeinfo 只能设置在“trunk”或“branches/branchName”等目录上。有时需要“提醒”开发人员,使用根目录的子目录作为合并目标不是一个好习惯(根据列出的最佳实践here)。有没有人有这样的钩子脚本或知道我在哪里可以找到一个?我在 windows 环境中,所以批处理或 powershell 会更好,但任何东西肯定会有帮助。
【问题讨论】:
-
非常好奇——您使用的是 Subversion 1.5 还是 1.6? (由于与非根目录的合并,我也遭受了各种目录/文件的 svn:mergeinfos 之苦,但在 1.5 上)
-
我们使用的是 1.6。我遇到的问题不是由于 svn 客户端在所有可见的东西上设置 mergeinfo 的旧 1.5 错误。相反,问题是由于“用户错误”,其中用户使用非根目录(如“trunk/mySubProject”)作为合并目标执行合并,因此在该目录上设置合并信息。我相信你知道这会搞砸后续的合并。
-
确实-感谢您提供的信息。我们最近才发布 1.6,所以我还没有时间观察事情的变化。不过,我需要解决同样的问题。 +收藏
-
哦,这似乎很有帮助......
-
@StuartLange:它并没有真正搞砸后续的合并,因为 SVN 考虑了这个信息。真正变得困难的地方是当您作为人类想要弄清楚哪些内容已被合并时。
标签: svn pre-commit-hook mergeinfo