On 10/22/2010 05:11 PM, Jonathan Nieder wrote: > Mathias Lafeldt wrote: > >> Currently, GIT-VERSION-GEN invokes the plumbing commands "git update-index" and >> "git diff-index" to determine if the working tree is dirty. It then appends >> "-dirty" to the version string returned by "git describe". >> >> However, as of Git v1.6.6, "git describe" can be told to do all that with the >> "--dirty" option, saving us the plumbing. > > This has a minor downside, which is avoiding the nice version numbers when > building Git with git 1.5.6 installed. What is the upside? The upside is that the number of executed commands to get the version string is reduced from three to one. I understand your point, though it would only be a "problem" once when doing the upgrade. If backwards compatibility is more important here, I'd at least add a comment to GIT-VERSION-GEN. Something like: diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index d441d88..5c226f6 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -16,6 +16,10 @@ elif test -d .git -o -f .git && case "$VN" in *$LF*) (exit 1) ;; v[0-9]*) + # As of Git v1.6.6, we can use "git describe --dirty" to + # determine if the working tree is dirty. However, to still + # have nice version numbers when building Git with older + # versions of git installed, we keep using plumbing. git update-index -q --refresh test -z "$(git diff-index --name-only HEAD --)" || VN="$VN-dirty" ;; -Mathias -- 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