已经跟踪的文件会自动在特定路径中合并而不会发生冲突

时间:2018-08-10 09:58:04

标签: git

我说3个分支机构提供3种不同的服务。让我们将这些分支称为develop-service1develop-service2develop-service3。并且有一个主分支,它具有这三个分支中的所有更改。

develop-service1分支仅修改service1文件夹下的文件,其他两个分支也是如此。

有时,最紧急的错误修复将掌握。因此,有一个要求,可能是在漏洞修复部署之后,我必须将master合并到这三个分支。

我的问题是在说develop-service1时,我希望service2文件夹和service3文件夹在合并主服务器时与主服务器中的文件保持同步,而不会发生任何冲突。 (理想情况下,进行主控中的任何更改,而忽略develop-service1中的更改)。

我不知道同一问题是否还有其他风味。我尝试搜索,但不知为何无法确定那是我一直在寻找答案的正确问题。

2 个答案:

答案 0 :(得分:0)

如果每个分支仅处理特定的目录/服务,则合并它们中的任何一个都不会引起任何冲突。 如果已将错误修复直接提交给master,并且您希望该更改反映在每个分支中,那么将master合并到每个分支中应该是绝对安全的。

git checkout develop-service1
git merge master

git checkout develop-service2
git merge master

等等。

答案 1 :(得分:0)

好,您的问题是有效的。现在让我们想象一下这种情况(自动合并)。 origin/master中有一个新的提交,它会自动将更改合并到您的develop-service2develop-service3分支中。稍后,您会发现这些分支中的本地更改丢失了,这应该是一个手动过程,您可以在其中手动选择合并origin/master中的最新更改,即解决冲突。 GIT专门为您提供此条款,以使您避免在冲突情况下遇到麻烦,并且由于您更好地了解代码(而不是GIT;它不是那么聪明;),因此您可以更好地解决这些冲突。为了使此过程更流畅,请频繁进行提交和合并,以便将更改集成为小块,并且合并后不会遇到更大的问题。如果您想更深入地了解,请告诉我。