针对冲突文件的SVN预提交挂钩

问题描述 投票:0回答:1

我有一个名为test.txt的文件。 什么时候发生文件冲突。我们得到4个文件

test.txt
test.txt.min
test.txt.r1
test.txt.r2

test.txt,我们得到一些文字

<<<<<<< .mine
>>>>>>> .r2

所以我的问题是 有没有办法阻止用户提交冲突的文件? 我的意思是,

  • 用户无法提交包含文本<<<<<<< .mine >>>>>>> .r2的文件
  • 用户无法提交创建的一些额外文件 我在Windows中使用带有visualSVserver的tortoiseSVN
svn tortoisesvn hook visualsvn-server pre-commit-hook
1个回答
1
投票

简单的方法:

这个问题似乎很容易通过软件解决(例如钩子脚本),但真正的问题会更糟(相信我,我为客户实现了一次!)。您的人员将开始删除冲突标记,并将重命名这些文件以在您的钩子脚本中取消匹配您的正则表达式,从而导致您的存储库充满所有类型的冲突文件。更糟糕的是:当冲突标记消失时,没有人可以重建潜在的冲突!

正确的方法:

您应该向用户解释这种冲突是如何发生的。如果它们经常发生,通常会有另一个(外部)问题(软件设计不好,没有团队沟通等)。 SVN禁止提交冲突的文件。您应该展示如何解决此冲突。在标准SVN用例中,冲突不是一个大问题(合并除外)

© www.soinside.com 2019 - 2024. All rights reserved.