当前位置:  开发笔记 > 开发工具 > 正文

git rebase - 继续没有变化

如何解决《gitrebase-继续没有变化》经验,为你挑选了1个好方法。

我有两个分支,有两个功能:banch_1branch_2. branch_2使用来自的功能branch_1.我所做的变化branch_1,并希望变基branch_2branch_1从中获取改变branch_1branch_2.

所以,我正在检查branch_2:

git checkout branch_2

并尝试在branch_1上重新定义:

git rebase branch_1

之后我得到两个文件的'合并冲突'.所以我跑了

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.

我做错了什么?



1> DaveyDaveDav..:

如果我理解正确,当您收到合并冲突时,您接受所有更改branch_1,意味着该特定提交与此branch_2无关 - 该提交中的任何更改都与来自的传入更改相同branch_1.

当git说

没有变化 - 你忘了使用'git add'吗?

它告诉你,你试图申请的提交不会对仓库进行任何更改,因此它没有理由存在.

对此的简单解决方案是git rebase --skip,正如@ C-Otto的评论所暗示的那样,只是说"忽略这个提交并继续前进".这将跳过您当前正在处理的提交,然后转到后续提交.

您可能还会发现使用交互式rebasing(git rebase -i)更容易,它首先向您提供它将应用的提交列表,并为您提供有关如何处理每个提交的各种选项.在这种情况下,如果您确定一个不再相关的提交,您可以预先跳过它,这样您就不会在第一时间看到冲突.

推荐阅读
360691894_8a5c48
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有