gpt4 book ai didi

git rebase --continue 没有变化

转载 作者:IT王子 更新时间:2023-10-29 01:28:45 26 4
gpt4 key购买 nike

我有两个具有两个功能的分支:banch_1branch_2branch_2 使用 branch_1 中的功能。我在 branch_1 中进行了更改,并希望将 branch_2 rebase 到 branch_1 以获取从 branch_1分支_2

所以,我正在检查 branch_2:

git checkout branch_2

并尝试在 branch_1 上 rebase :

git rebase branch_1

之后我得到两个文件的“merge 冲突”。所以我跑

git mergetool -t meld

并解决冲突,从 branch_1 中选择更改。

我正在保存文件并转到终端,输入git status 并看到 git 索引没有变化。接下来我运行 git rebase --continue 并获取

No changes - did you forget to use 'git add'? 

错误。但是没有什么可以补充的!我输入 git log 并看到来自 branch_1 的提交,但是没有来自 branch_2 的提交。

我做错了什么?

最佳答案

如果我理解正确,当您遇到 merge 冲突时,您将接受来自 branch_1 的所有更改,这意味着来自 branch_2 的特定提交是无关紧要的- 该提交中的任何更改都与来自 branch_1 的传入更改相同。

当 git 说

No changes - did you forget to use 'git add'?

它告诉您,您尝试应用的提交不会对存储库进行任何更改,因此它没有理由存在。

对此的简单解决方案是 git rebase --skip,正如@C-Otto 的评论中所建议的那样,它只是说“忽略此提交并继续”。这将跳过您当前正在处理的提交,并继续处理后续提交。

您可能还会发现使用交互式 rebase (git rebase -i) 更容易,它首先会向您显示它将应用的提交列表,并为您提供各种操作选项每个单独的提交。在这种情况下,如果您发现一个不再相关的提交,您可以提前跳过它,这样您就永远不会在第一时间看到冲突。

关于git rebase --continue 没有变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34204447/

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