From: "Junio C Hamano" <>
Sent: Tuesday, April 16, 2013 7:12 PM
"Philip Oakley" <> writes:

What kind of benefit are you envisioning out of this?

The purpose of tests is to detect mistakes and spot regressions.

A change to the 'git version X.Y.z' string would be a regression, as I
spotted earlier, as it conflicts with expectations of standard
programmes such as git-gui.

Sorry, but I do not follow.

A released version says "git version".  In a month or so,
I'll have another one that says "git version 1.8.3".  Or I may
decide to bump in preparation for 2.0 and it may identify itself as
"git version 1.9".

Neither of which no existing "program such as git-gui" has ever

In what way is that a regression?

But they both pass the test and test suite, yes? And even if you use git-gui with them, git-gui will not barf on start up, which it would if the version string fails my test.

Passing the test suite should be a reasonble guarantee that co-tools will work, including those that check for version. This is a check for that version string.

However if someone[1] creates "My Special Git Version 1-9-3 (Index V7b)", and here I'm suggesting they may have other special changes, then the version check will tell them that even when they have fixed their special changes to pass the other parts of the test suite, other co-tools could barf.

Its about pushing the piece of string from the users end ;-) It also stops others trying to change 'git' to 'Git' within this message, just as I did.


[1] my first draft had 'you', but that is not a reasonable starting position. It's more about *others* attempting to create release versions, which announce their name, that we expect to be compatible with say git-gui (via the rest of the test suite), and need to check that announcement.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to