合并后 pull --rebase 反复发生冲突
Repeated conflicts on pull --rebase after got merge
场景如下:
几天前我从 master 中创建了 branch1。然后,对 branch1 进行了一些推送,对 master 进行了一些推送。我想让 branch1 每天与 master 同步,这样当我最终将 branch1 合并到 master 时,它已经有了这些更改。所以,我决定每天将 master 合并到 branch1。
现在,这是我所做的:
git checkout master
> git pull --rebase origin master
git checkout branch1
> git pull --rebase origin branch1
git merge master
- 我解决了冲突,暂存了文件,然后为合并做了一个本地提交。
- 现在,我做一个
git pull --rebase origin branch1
现在,它显示了我刚刚在合并过程中解决的所有冲突。为什么会这样?
我不得不再次解决所有的冲突,然后再上演。然后说 git rebase --continue
The question is why did it happen? Whats happening behind the scene?
合并后您还没有推送更改。因此有效地远程包含合并之前的更改。下一次拉取将标记冲突,就像最初发生合并时所做的那样。
避免它的一种方法是启用 rerere
另外恕我直言,我觉得 rebasing master 比合并更好
场景如下: 几天前我从 master 中创建了 branch1。然后,对 branch1 进行了一些推送,对 master 进行了一些推送。我想让 branch1 每天与 master 同步,这样当我最终将 branch1 合并到 master 时,它已经有了这些更改。所以,我决定每天将 master 合并到 branch1。
现在,这是我所做的:
git checkout master
>git pull --rebase origin master
git checkout branch1
>git pull --rebase origin branch1
git merge master
- 我解决了冲突,暂存了文件,然后为合并做了一个本地提交。
- 现在,我做一个
git pull --rebase origin branch1
现在,它显示了我刚刚在合并过程中解决的所有冲突。为什么会这样?
我不得不再次解决所有的冲突,然后再上演。然后说 git rebase --continue
The question is why did it happen? Whats happening behind the scene?
合并后您还没有推送更改。因此有效地远程包含合并之前的更改。下一次拉取将标记冲突,就像最初发生合并时所做的那样。
避免它的一种方法是启用 rerere
另外恕我直言,我觉得 rebasing master 比合并更好