Git 强制文件在更改时始终产生合并冲突

Git 强制文件在更改时始终产生合并冲突,git,Git,两个人同时编辑一个文件(称为AssemblyVersionInfo)时,我遇到了一个问题。如果第一人称将其内容从version:1.0.0.244更改为version:1.0.0.245git,只需合并这些更改,结果是version:1.0.0.245,而它应该是version:1.0.0.246。它看起来就像不同步的变量更新上的竞争条件 如果在不同的分支上更改了一个文件,即使其内容相同,也可以强制git显示合并冲突 您可以使用git merge--no ff然后正确设置版本。之后,您必须提交合

两个人同时编辑一个文件(称为
AssemblyVersionInfo
)时,我遇到了一个问题。如果第一人称将其内容从
version:1.0.0.244
更改为
version:1.0.0.245
git,只需合并这些更改,结果是
version:1.0.0.245
,而它应该是
version:1.0.0.246
。它看起来就像不同步的变量更新上的竞争条件


如果在不同的分支上更改了一个文件,即使其内容相同,也可以强制git显示合并冲突

您可以使用
git merge--no ff
然后正确设置版本。之后,您必须提交合并和版本更改

从文件中:

--无ff
即使合并解析为快进,也要创建合并提交。这是合并带注释的对象时的默认行为 (可能还有签名)标签


所以不可能通过
gittributes
或其他方式配置它?我所在的大学正在使用不同的工具,这些工具可能不支持此密钥,而我希望确保无法以这种方式编辑文件。看起来,这是可能的:抱歉,但我不明白它应该如何工作。例如,我在分支A(包括VersionInfo)中编辑了500个文件,我的朋友在分支B中也做了同样的编辑,我将我的分支推入master。现在我的朋友要推他的树枝了。
no ff
选项如何防止分支自动合并?git如何在具有相同内容的两个文件上创建冲突?它不会创建冲突,因为没有冲突。Git只是合并(没有提交)。然后,您的朋友必须检查版本是否正常。如果不正常,他可以手动更改版本,然后使用正确的版本号提交。如果冲突是由于版本没有自动增加而导致的,那么可以使用预提交挂钩(每次提交时都增加版本)。这是我们使用的……您可能会考虑通过构建或CI过程对版本号进行更改,而不是试图使源代码控件“知道”如何更新版本。简短的答案是“否”。请参阅详细答案(但仍然是“否”…)。