致命:无法快速前进,中止


80

为什么Git不允许我再进行快速合并?如果我尝试使用来强制执行此操作--ff-only,则会收到消息“致命:无法快速前进,中止”。我意识到,它具有巨大的优势merge --no-ff,但是我很困惑为什么现在不能这样做--ff-only

Answers:


87

您的分支不再直接基于您尝试将其合并到的分支-例如,另一个提交已添加到目标分支中,而该分支不​​在您的分支中。因此,您不能快进它(因为快进要求您的分支完全包含目标分支)。

您可以将分支重新放置在目标分支(git rebase <destination branch>)的顶部,以对提交进行重新处理,以使它们可以快速转发到其中,或者可以进行常规合并。


这怎么可能?这是不正确的。必须是某些设置已更改。
mathtick

@mathtick,该消息来自您的提取配置ff,该配置已从命令设置为git config pull.ff only
Al Duncanson

68

git pull --rebase。与其他解决方案不同,您不需要知道目标分支的名称。


8

出现此错误的原因是“合并冲突”。如果对GitHub文件进行了多次编辑/更新而没有在更新的每个阶段上拉您的更改,则这会导致合并冲突。

正常情况:

$ git pull

注意:-您会得到一个错误。 致命:无法快速前进,中止

试试这个:

$ git pull origin master --rebase

注意:-现在,执行此命令后,您将遇到合并冲突问题。因此,现在您可以转到文件并手动解决冲突。合并冲突错误

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.