Check git version at runtime, rather than assuming it will be the same as the git version used at build time when running git-checkattr and git-branch remove.

It's ok to probe every time for git-branch remove because that's
run quite rarely. For git-checkattr, it's run only once, when
starting the --batch mode, and so again the overhead is pretty minimal.

This leaves 2 places where the build version is still used.
git merge might be interactive or fail if one skews, and --no-gpg-sign
might not be pased, or might be passed to a git that doesn't understand it
if the other skews. It seems a little expensive to check the git version
each time these are used.

This doesn't seem likely to cause many problems, at least compared with
check-attr hanging on skew.
This commit is contained in:
Joey Hess 2015-01-05 15:54:52 -04:00
parent bbd5812ab0
commit 4d786ebe4a
4 changed files with 27 additions and 16 deletions

3
debian/changelog vendored
View file

@ -9,6 +9,9 @@ git-annex (5.20141232) UNRELEASED; urgency=medium
* Android: Provide a version built with -fPIE -pie to support Android 5.0.
* sync: Fix an edge case where syncing in a bare repository would try to
merge and so fail.
* Check git version at runtime, rather than assuming it will be the same
as the git version used at build time when running git-checkattr and
git-branch remove.
-- Joey Hess <id@joeyh.name> Fri, 02 Jan 2015 13:35:13 -0400