合并后 pull --rebase 反复发生冲突

Repeated conflicts on pull --rebase after got merge

场景如下: 几天前我从 master 中创建了 branch1。然后,对 branch1 进行了一些推送,对 master 进行了一些推送。我想让 branch1 每天与 master 同步,这样当我最终将 branch1 合并到 master 时,它已经有了这些更改。所以,我决定每天将 master 合并到 branch1。

现在,这是我所做的

  1. git checkout master > git pull --rebase origin master
  2. git checkout branch1 > git pull --rebase origin branch1
  3. git merge master
  4. 我解决了冲突,暂存了文件,然后为合并做了一个本地提交。
  5. 现在,我做一个git pull --rebase origin branch1

现在,它显示了我刚刚在合并过程中解决的所有冲突。为什么会这样? 我不得不再次解决所有的冲突,然后再上演。然后说 git rebase --continue

The question is why did it happen? Whats happening behind the scene?

合并后您还没有推送更改。因此有效地远程包含合并之前的更改。下一次拉取将标记冲突,就像最初发生合并时所做的那样。

避免它的一种方法是启用 rerere

另外恕我直言,我觉得 rebasing master 比合并更好