git-tar-tree: no more void pointer arithmetic
[git.git] / builtin-init-db.c
index 2a1384c..6a24e9b 100644 (file)
@@ -199,6 +199,21 @@ static void create_default_files(const char *git_dir, const char *template_path)
        git_config(git_default_config);
 
        /*
+        * We would have created the above under user's umask -- under
+        * shared-repository settings, we would need to fix them up.
+        */
+       if (shared_repository) {
+               path[len] = 0;
+               adjust_shared_perm(path);
+               strcpy(path + len, "refs");
+               adjust_shared_perm(path);
+               strcpy(path + len, "refs/heads");
+               adjust_shared_perm(path);
+               strcpy(path + len, "refs/tags");
+               adjust_shared_perm(path);
+       }
+
+       /*
         * Create the default symlink from ".git/HEAD" to the "master"
         * branch, if it does not exist yet.
         */
@@ -287,7 +302,7 @@ int cmd_init_db(int argc, const char **argv, char **envp)
        safe_create_dir(path, 1);
 
        if (shared_repository)
-               git_config_set("core.sharedRepository", "true");
+               git_config_set("core.sharedrepository", "true");
 
        return 0;
 }