path: root/builtin-init-db.c
diff options
authorJunio C Hamano <>2007-01-07 10:00:28 (GMT)
committerJunio C Hamano <>2007-01-08 05:36:35 (GMT)
commit7d1864ce67d83485cf5cbc8c90fc170ee884ef16 (patch)
treec6283633ed659deb0cfdecd52f41d63104bc569a /builtin-init-db.c
parent510c5a8ee392fd2ab954b676bae486b53f444013 (diff)
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 <>
Diffstat (limited to 'builtin-init-db.c')
1 files changed, 6 insertions, 2 deletions
diff --git a/builtin-init-db.c b/builtin-init-db.c
index bbef820..22729f0 100644
--- a/builtin-init-db.c
+++ b/builtin-init-db.c
@@ -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;