Subject: Re: Bug in git rebase --continue in v1.8.4

From: Matthieu Moy <[email-masked]>
Date: Wed, 04 Sep 2013 10:18:35 +0200

[ Cc-ing Ram, as he is the author of the possibly guilty commit. ]

Andriy Gapon <[email-masked]> writes:

> Christoph Mallon said:
>> if I run rebase --continue (e.g. after a conflict resolution), then the rebase always ends with this error message:
>> 	It seems that there is already a rebase-apply directory, and
>> 	I wonder if you are in the middle of another rebase.  If that is the
>> 	case, please try
>>         	git rebase (--continue | --abort | --skip)
>> 	If that is not the case, please
>>         	rm -fr "/home/tron/gitRebaseTest/test/.git/rebase-apply"
>> 	and run me again.  I am stopping in case you still have something
>> 	valuable there.
>> 
>> This happens on git v1.8.4 on FreeBSD. It is fine with v1.8.3.4.
>
> I observe exactly the same problem.
> I also use FreeBSD and the problem started with 1.8.4.
>
> Judging by the lack of followups, could this be a FreeBSD-specific problem?

I can't reproduce here (Debian GNU/Linux). Do the testsuite pass for
you?

If not, can you write a failing test? A minimalist script outside the
testsuite may help too if you're not familiar with Git's testsuite.

> Any thoughts / suggestions?
> Thank you!
>
>> It seems to be caused by
>> a1549e1049439386b9fd643fae236ad3ba649650, specifically this hunk:
>> 	--- a/git-rebase--am.sh
>> 	+++ b/git-rebase--am.sh
>> 	 <at>  <at>  -7,12 +7,12  <at>  <at>  case "$action" in
>> 	 continue)
>> 	  git am --resolved --resolvemsg="$resolvemsg" &&
>> 	  move_to_original_branch
>> 	- exit
>> 	+ return
>> 	  ;;
>> 	 skip)
>> 	  git am --skip --resolvemsg="$resolvemsg" &&

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/