Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
git: always set GIT_CEILING_DIRECTORIES
By default when git don't find a repository in current working dir, it search for git repository in parent directories. This may lead to unwanted behavior when the benchmarked repository is nested inside other repo since in `checkout()` we expect to given path to be the repository and re-clone it if it's not. When the given path is not a repository we may run git commands (like a checkout) on unrelated repo. This bug occur in appveyor tests where `--basetemp` is set to a directory inside asv checkout, and `test_repo.test_repo_git()` run a checkout() after `rm -rf .git` causing tests to run a `git checkout -f master` on asv repo. Always set GIT_CEILING_DIRECTORIES to parent directory of the repo path to avoid git looking at parent directories. We don't have similar issue with hglib since it use the `-R` option to explicitly set the repository root.
- Loading branch information