git:合并方向之间的差异

时间:2021-02-18 22:11:25

标签: git merge

我使用 git 已经有一段时间了,但我的合并一直相当简单。创建一个分支,将其合并到 master。有时 2 个人的分支接触相同的代码,因此存在合并冲突,通常很容易修复。

但现在我有一个案例,其中创建了一个分支并进行了许多重大更改。同时对母版进行了大量更改,并且在两者中更改了相同的文件。我们希望合并两个分支的所有更改。我们完全期望会有冲突,但我们希望将它们保持在最低限度。

我的问题是,将 master 合并到分支,解决冲突,然后将其合并到 master 与将分支合并到 master 并解决那里的冲突之间有什么区别吗?

是否有任何提示或最佳做法可以进行这样的复杂合并以避免丢失任何更改?

1 个答案:

答案 0 :(得分:1)

您不应将 master 合并到主题分支。
最佳做法是将特定分支(如主题/功能分支)合并到集成分支(如“development”或“master”)

就您而言,git rebase 更好,可以在本地解决您的分支和主节点之间的任何冲突。
然后,从您的分支到 master 的合并将是微不足道的,因为所有提交都将在 master 之上重新创建:

cd /path/to/local/repo
git fetch
git switch myBranch
git rebase origin/master
# resolve conflict
git push --force

git switch -C master origin/master
git merge myBranch
git push