Tuesday, September 18, 2012

Git 1.7.12.1

The first maintenance release for Git 1.7.12.X series has been tagged, with many usability fixes that have been cooking in the 'next'/'master' front (they will all be in the upcoming major release 1.8.0).

All users of 1.7.12.X series must upgrade (eh, must is not quite true, but I just wanted to say it after seeing Greg-KH doing so on the kernel mailing list).

Some highlights:

"git cherry-pick A C B" used to replay changes in A and then B and then C if these three commits had committer timestamps in that order, which is not what the user who said "A C B" naturally expects. This has been fixed.

"git for-each-ref" did not correctly support more than one --sort option.

When "git push" triggered the automatic gc on the receiving end, a message from "git prune" that said it was removing cruft leaked to the standard output, breaking the communication protocol.

The interactive prompt "git send-email" gives was error prone. It asked "What e-mail address do you want to use?" with the address it guessed (correctly) the user would want to use in its prompt, tempting the user to say "y". But the response was taken as "No, please use 'y' as the e-mail address instead", which is most certainly not what the user meant. We now ask for confirmation against such input.

After "gitk" showed the contents of a tag, neither "Reread references" nor "Reload" did not update what is shown as the contents of it, when the user overwrote the tag with "git tag -f".