Junio C Hamano <gitster@xxxxxxxxx> writes: > I think (1) the solution (almost) makes sense, (2) the patch needs to be > explained a lot better as you mentioned in your two messages, and (3) if > it does not affect any other case than when you are in a subdirectory of > the .git/ directory, then you are doing something funny anyway and > performance issue Dscho mentions, if any, is not a concern. > > My "(almost)" in (1) above is because the patch uses this new behaviour > even when you are inside the .git/ directory itself (or at the root of a > bare repository), which is a very common case that we do not have to nor > want to change the behaviour. It also invalidates the precondition of (3) > above. And this is a trivial follow-up on top of Szeder's patch. setup.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git c/setup.c w/setup.c index 4049298..dd7c039 100644 --- c/setup.c +++ w/setup.c @@ -456,8 +456,11 @@ const char *setup_git_directory_gently(int *nongit_ok) inside_git_dir = 1; if (!work_tree_env) inside_work_tree = 0; - cwd[offset] = '\0'; - setenv(GIT_DIR_ENVIRONMENT, cwd, 1); + if (offset != len) { + cwd[offset] = '\0'; + setenv(GIT_DIR_ENVIRONMENT, cwd, 1); + } else + setenv(GIT_DIR_ENVIRONMENT, ".", 1); check_repository_format_gently(nongit_ok); return NULL; } -- 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