Git错误:以前的rebase目录.git / rebase-apply仍然存在,但给出了mbox

我试图申请一个补丁,我从http://www.winehq.org/pipermail/wine-devel/2014-May/104356.html 。 我把它复制到一个文本编辑器,并保存为my.patch (我需要修复电子邮件,它已被混淆)。

我试图用Git来应用它,但我得到这个错误:

 sashoalm@sashoalm-VirtualBox:~/Desktop/wine-git$ git am --signoff <my.patch previous rebase directory /home/sashoalm/Desktop/wine-git/.git/rebase-apply still exists but mbox given. 

这个神秘的错误消息让我不知道什么是错的,或者我需要做些什么来使它工作。 这个错误是什么意思? 我该如何解决?

好吧,原来我需要删除目录.git/rebase-apply 。 它在那之后工作(或者至less给了我不同的错误,说电子邮件是错误的)。 我仍然不知道这个错误究竟意味着什么,或者为什么会出现错误。

编辑:正如下面的意见build议, git rebase --abort可能是一个更好的方法来解决这个问题,但我没有testing它。

 git am --abort 

为我工作,但是git rebase --abort没有。

发生了什么事情:我尝试应用一个补丁,但已经损坏(可能是通过粘贴在Gmail中的Gmail副本 ):

 git am bad.patch 

而Git说:

 Applying: python: fix Linetable case to LineTable in docstrings and comments fatal: corrupt patch at line 56 Patch failed at 0001 python: fix Linetable case to LineTable in docstrings and comments The copy of the patch that failed is found in: /home/ciro/git/binutils-gdb/src/.git/rebase-apply/patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". 

注意git如何给出解决scheme: To restore the original branch and stop patching, run "git am --abort".

然后我显然忽略了这个信息,立即尝试了一个固定的版本:

 git am good.patch 

并得到了错误。