From: Thomas Rast Date: Fri, 17 Aug 2012 16:37:13 GMT Subject: Re: Git feature request: --amend older commit Message-ID: <87628heapy.fsf@thomas.inf.ethz.ch> In-Reply-To: <20120817154749.11762.qmail@science.horizon.com> "George Spelvin" writes: > With git's "commit frequently" style, I often find that I end up with a > commit that includes a typo in a comment or I forgot one call site when > updating functions or something. [...] > But it would be really handy if there were a one-step command for doing this. > > Something like "git commit --fixup HEAD~3", where "git commit --fixup HEAD" > would be equivalent to "git commit --amend". Umm, --fixup is already taken and makes the subject be 'fixup! '. This can then be used by rebase -i --autosquash (or rebase.autosquash=true) to automatically put the fixup(s) that have accumulated into the right places. In addition, git-rebase learned to automatically use the upstream as the default base. So for me it's usually a matter of git add -p git commit --fixup=... # repeat the above two until all fixups are lined up git rebase -i # close editor without making changes Is that still too much effort? The ideas discussed in http://thread.gmane.org/gmane.comp.version-control.git/202535/focus=202569 also help selecting the fixup argument more quickly. -- Thomas Rast trast@{inf,student}.ethz.ch