gpt4 book ai didi

master 上的 git rebase 会产生冲突,但 "plain" merge 到 master 不会

转载 作者:行者123 更新时间:2023-12-05 01:32:02 24 4
gpt4 key购买 nike

当我将我的分支 my-feature rebase 到 ma​​ster 时,我遇到了冲突:

[my-feature]$ git rebase master
Applying: ...
Using index info to reconstruct a base tree...
M vars/file.txt
Falling back to patching base and 3-way merge...
Auto-merging vars/file.txt
CONFLICT (content): Merge conflict in vars/file.txt
error: Failed to merge in the changes.

如果我改为将 my-feature 简单 merge 到 ma​​ster 中,它工作正常:

[master] $ git merge my-feature
Merge made by the 'recursive' strategy.
..

我已尝试重新克隆我的存储库,以确保一切都与远程同步并处于干净状态。

当普通 merge 失败时,rebase 怎么可能失败?

使用 git 已经有几年了,以前从未见过这种情况,并且总是假设如果 merge 进行顺利(没有冲突),那么它保证 rebase 也会进行,反之亦然。

最佳答案

这有多种原因。它通常发生在中间进行的更改会产生冲突(当 rebase 时),但后来的修订会收回。 Merge 不必处理冲突的更改,因为它不关心中间的修订……只关心进行 merge 的技巧(以及最后的共同祖先)。

这是来自编辑,我不是 100% 确定我同意它,但唉 :-):发生这种情况的另一个原因是如果您的 my-feature 分支包含新的 merge 提交。如果这些 merge 提交需要冲突解决,那么它们可能需要再次解决。

关于master 上的 git rebase 会产生冲突,但 "plain" merge 到 master 不会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65832615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com