On Mon, Jan 20, 2014 at 11:32:12PM +0100, Thomas Rast wrote: > > This is bad to be touching the repo and assuming it is non-bare. For > > some reason I assumed that the perf suite made a copy of the repo, but > > it doesn't. If you point to a bare repo via GIT_PERF_REPO, this part of > > the test fails. > > It does make a copy, but with cp -Rl. I haven't actually ever tried > what happens if you point it at a bare though. It *should* fail because > it tries to cd $repo/.git, but if that was itself bare... Oh, hmph. I checked my linux repo, which I had used as GIT_PERF_REPO, and noticed that it had the test commit in its reflog. But I forgot that is because I did the test manually there right before writing up the t/perf script! So yes, it copies, and it's totally fine to be modifying the repo. Bare repos seem to work just fine for me. It looks like we use `git rev-parse --git-dir` to get the source, and then copy that to `.git` in the temporary directory. So that works fine either way, and we do have a directory available as the working dir. But of course the config from the bare repo says `core.bare = true`, so some commands will bail. We could perhaps just set GIT_WORK_TREE in the perf scripts, which I believe would override the bare setting in the .git/config. And then we know the repos will be consistently non-bare. Whether we do that or not, I think the update I posted is preferable, as it reproduces the problem in a much simpler manner. -Peff -- 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