[PATCH A] GIT-VERSION-GEN: refresh the index before judging a working dir to be dirty
- From
- Christian Jaeger <christian@jaeger.mine.nu>
- Date
- Aug 7, 2008, 15:16 UTC
- Message-ID
- <14341e3a48ec86021f933361af9b02b542cc7c04.1218137290.git.christian@jaeger.mine.nu>
- In-Reply-To
- <sjj6zt28jy9qy7y8@jaeger.mine.nu>
When building under the control of the "fakeroot" tool [*], as is the case when building a Debian package using "dpkg-buildpackage -rfakeroot", GIT-VERSION-GEN appended "-dirty" to the version number; this happens because "git diff-index --name-only HEAD --" would report all files as changed if they have a non-root owner/group, since they appear as owned by root under fakeroot, leading to non-empty output. Refreshing the index first makes the decision based on content changes only.
[*] http://fakeroot.alioth.debian.org/
Signed-off-by: Christian Jaeger <christian@jaeger.mine.nu> --- GIT-VERSION-GEN | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index cb7cd4b..e6ff486 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -16,6 +16,7 @@ elif test -d .git -o -f .git && case "$VN" in *$LF*) (exit 1) ;; v[0-9]*) + git update-index --refresh test -z "$(git diff-index --name-only HEAD --)" || VN="$VN-dirty" ;; esac
-- 1.6.0.rc2.1.g7e734