Subject: Re: [PATCH 2/2] git-rebase--interactive: auto amend only edited commit

From: Johannes Sixt <[email-masked]>
Date: Tue, 09 Sep 2008 08:42:57 +0200

Dmitry Potapov schrieb:
> Another problem is that after being stopped at "edit", the user adds new
> commits. In this case, automatic amend behavior of git rebase triggered
> by some stage changes causes that not only that the log message of the
> last commit is lost but that it will contain also wrong Author and Date
> information.
> 
> Therefore, this patch restrict automatic amend only to the situation
> where HEAD is the commit at which git rebase stop by "edit" command.
...
> @@ -430,6 +430,8 @@ do
>  			if test -f "$DOTEST"/amend
>  			then
>  				amend=$(git rev-parse --verify HEAD)
> +				test "$amend" = $(cat "$DOTEST"/amend) ||
> +				die "You have uncommitted changes"

Doesn't this terse message carry a bit of a "WTF?" factor? In other
situations rebase --continue goes into git-commit just fine, but it does
not under these special conditions. How about this:

"Will not auto-commit uncommitted changes after you have already committed
something. Please run 'git commit --amend' yourself."

>  				git reset --soft HEAD^ ||
>  				die "Cannot rewind the HEAD"
>  			fi

-- Hannes