git同一文件,该文件中的内容不同,git合并时会发生什么

时间:2019-05-17 15:43:26

标签: git git-merge

我有2个分支(主管和开发)。在两个分支中,我都有nginx conf。现在,在master分支中,我需要拥有与开发分支中的nginx.conf不同的nginx.conf。

1)我可以在多个分支中拥有内容不同的相同文件吗?

2)有时我需要将开发合并到master分支中。那时会发生什么?来自开发分支的nginx.conf是否有可能合并到master的nginx.conf中,而master的nginx.conf会更改为开发的nginx.conf?

3)最佳做法是什么?

2 个答案:

答案 0 :(得分:0)

当您尝试将文件分开后第一次合并时,git会尝试将文件更改从开发转移到主文件。...您可以修改修订以还原该更改或以--no-运行提交,这样您就可以在提交之前进行逆向操作。...发生之后,如果在dev上未更改文件 ,则git合并时将不再尝试从dev继承更改。 ...您应该保留一个样本文件,而不是真实的文件...但是,那么,您已经掌握了“技术性” POV的内容。

答案 1 :(得分:0)

我认为,最好创建特定于环境的单独文件,例如nginx.dev.conf,nginx.prod.conf等,并让捆绑工具担心在哪个阶段需要提取哪个文件。它使事情变得简单。

在分支之间具有相同内容且不同内容的文件会增加合并期间的复杂性,必须使用此处另一个答案中提到的方法来解决。