1

我希望 Git 在合并期间忽略某些配置文件。我尝试通过将合并策略更改为“我们的”来更新 git 属性,如下所示。但这仅在存在合并冲突时才有效。 http://git-scm.com/book/en/Customizing-Git-Git-Attributes#Merge-Strategies

我什至不希望在这些文件上发生自动合并。所以我想编写一个自定义合并驱动程序。自定义合并驱动程序是否可以停止对这些文件的自动合并?我找不到关于如何编写自定义合并驱动程序的好资源。驱动程序收到什么参数。

4

2 回答 2

2

我不会直接回答这个问题,而是尝试回答您遇到的问题,而不是回答您尝试实施的解决方案。

这通常表明您使用 git 的方式存在问题。人们经常遇到这个问题,因为他们正在使用 git 来部署他们的代码,并且想要针对不同的部署目标使用不同的配置文件。

通常最好稍微改变一下您的工作方式,以防止出现此类问题。以下是针对此类问题的不同经过验证的解决方案的列表。

它归结为针对不同的部署目标使用不同的文件。例如,不要跟踪实际的配置文件,而是跟踪配置模板。这样,您可以更改实际的配置文件,而 git 不需要跟踪这些更改。

于 2013-04-19T13:58:02.583 回答
0

如果我正确理解您的问题,您希望 git 忽略某些跟踪文件中的更改。

如果是这样尝试:

git update-index --assume-unchanged <file>

如果您想再次开始跟踪更改,请运行以下命令:

git update-index --no-assume-unchanged <file>

您还可以从中删除文件git并忽略它们(通过.gitignore),因为这听起来像是您滥用git以跟踪这些配置文件。

于 2013-04-19T14:37:46.583 回答