From: Stephan Beyer Date: Tue, 22 Jul 2008 21:48:58 GMT Subject: Re: [PATCH] rebase -i: only automatically amend commit if HEAD did not change Message-ID: <20080722214858.GC5904@leksak.fem-net> In-Reply-To: Hi, Johannes Schindelin wrote: > If the user called "rebase -i", marked a commit as "edit", "rebase > --continue" would automatically amend the commit when there were > staged changes. > > However, this is actively wrong when the current commit is not the > one marked with "edit". So guard against this. Hmm, I like it. ;-) > @@ -419,7 +419,9 @@ do > else > . "$DOTEST"/author-script || > die "Cannot find the author identity" > - if test -f "$DOTEST"/amend > + if test -f "$DOTEST"/amend && > + test $(git rev-parse HEAD) = \ > + $(cat "$DOTEST"/amend) > then > git reset --soft HEAD^ || > die "Cannot rewind the HEAD" So if this fails, a non-amending commit is done. Agreed. :) Regards, Stephan -- Stephan Beyer , PGP 0x6EDDD207FCC5040F