Introduce is_bare_repository() and core.bare configuration variable

This removes the old is_bare_git_dir(const char *) to ask if a
directory, if it is a GIT_DIR, is a bare repository, and
replaces it with is_bare_repository(void *).  The function looks
at core.bare configuration variable if exists but uses the old
heuristics: if it is ".git" or ends with "/.git", then it does
not look like a bare repository, otherwise it does.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano
2007-01-07 02:00:28 -08:00
parent 510c5a8ee3
commit 7d1864ce67
5 changed files with 21 additions and 6 deletions

View File

@ -252,9 +252,13 @@ static int create_default_files(const char *git_dir, const char *template_path)
}
git_config_set("core.filemode", filemode ? "true" : "false");
/* Enable logAllRefUpdates if a working tree is attached */
if (!is_bare_git_dir(git_dir))
if (is_bare_repository()) {
git_config_set("core.bare", "true");
}
else {
git_config_set("core.bare", "false");
git_config_set("core.logallrefupdates", "true");
}
return reinit;
}