git-annex/doc/bugs/Check_for_minimum_Git_version.mdwn

41 lines
1.6 KiB
Markdown

### Please describe the problem.
git-annex does not check for the minimum version of Git that it requires, and therefore it sometimes uses flags which my installed Git does not recognize.
This happens when converting some indirect repositories to direct ones on an older server.
### What steps will reproduce the problem?
git annex direct
### What version of git-annex are you using? On what operating system?
git-annex version: 5.20131130
### Please provide any additional information below.
[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
direct iTunes/iTunes Media/iTunes U/Statistics 110_ Probability/Strategic Practice and Homework 9.pdf ok
direct iTunes/iTunes Media/iTunes U/Statistics 110_ Probability/Syllabus.pdf ok
direct error: unknown switch `B'
usage: git checkout [options] <branch>
or: git checkout [options] [<branch>] -- <file>...
# End of transcript or log.
"""]]
> git-annex checks the git version at compile time and arranges to use
> commands that will work with that version of git at run time.
>
> Adding a runtime check for a minimum git version would slow every git-annex
> command down and so I don't want to do it. It's up to the user to not
> built git-annex with a new version of git and then try to use it with an
> old version of git.
>
> `git checkout -B` seems to have been added to git quite a long time ago
> (2010), in version 1.7.1.1. I've made git-annex check at compile
> time if being built with such an old version and refuse to build.
> [[done]]. --[[Joey]]