Git - 自定义合并驱动程序忽略文件

时间:2013-04-19 13:17:56

标签: git

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

我甚至不想在这些文件上自动合并。所以我想写一个自定义合并驱动程序。是否可以使用自定义合并驱动程序停止自动合并这些文件?我无法找到有关如何编写自定义合并驱动程序的良好资源。司机收到了什么参数。

2 个答案:

答案 0 :(得分:2)

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

这通常表明您使用git的方式存在问题。通常人们会遇到这个问题,因为他们使用git来部署他们的代码,并希望不同的配置文件用于不同的部署目标。

为了防止这些问题,通常会改变你的工作方式。 Here列出了针对这类问题的各种经过验证的解决方案。

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

答案 1 :(得分:0)

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

若是,请尝试:

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

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

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

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