On Mon, Jul 30, 2012 at 5:41 PM, Thomas Badie <thomas.badie@xxxxxxxxx> wrote: > Hi all, > > When I should fixup or squash a commit, I nearly never > remember how to get the sha1 of the commit I want to fixup. > Because sometimes HEAD~n is not enough, I make `git log`, > copy the sha1 of the right commit and paste it in my git > fixup command. So I wrote a perl script to avoid the usage > of the mouse. And after discussion with some of my friends, > this can be generalized as a generic command line interface > tool to get a sha1. > > The idea is to have a perl module which run through > the log history and print 10 shortlog associated with a number > from 0 to 9, and a message below "Select commit [| 0, 9 |] or > next row ?" or this kind of message with several options. In general, I prefer nothing to be *interactive*, so I would vote an emphatic no. Also, try "tig" and see if you can customise it. For example, in order to create a new commit that is meant to be a fixup of some other commit, I 'git add' what is needed (either command line or tig again) then hit "m" to the main window, scroll down to the commit concerned, and hit "=". That "=" comes from this line in ~/.tigrc: bind main = !git commit --fixup=%(commit) Please use such methods to keep interactivity where it belongs, is my opinion. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html