From: Junio C Hamano Date: Tue, 25 Jun 2013 22:01:47 GMT Subject: Re: [PATCH] rebase -i: fixup fixup! fixup! Message-ID: <7vy59xzw6s.fsf@alter.siamese.dyndns.org> In-Reply-To: <7v61x127bw.fsf@alter.siamese.dyndns.org> Junio C Hamano writes: I guess I made typoes in the examples that made then unusable... > I think it is fine not to be too smart, as long as we do not lose > information that would help the user to compensate. > > After all, autosquash will give the user an opportunity to eyeball > the result of automatic rearrangement. If the user did this: > > git commit -m original > git commit --fixup original ;# obviously fixing the first one > git commit --fixup '!fixup original' ;# explicitly fixing the second > git commit --fixup original ;# may want to fix the first one > > and then "git rebase --autosquash" gave him this: > (the result of automatic rearrangement should read like this) pick d78c915 original fixup 0c6388e !fixup original fixup d15b556 !fixup !fixup original fixup 1e39bcd !fixup original > it may not be what the user originally intended, but I think it is > OK. > > As long as "!fixup original" message is kept in the buffer, the user > can notice and rearrange, e.g. (and the manual rearrangement should read like this) pick d78c915 original fixup 0c6388e !fixup original fixup 1e39bcd !fixup original fixup d15b556 !fixup !fixup original > if the user really wants to.