From: Junio C Hamano git-init-db [--template=<template_directory>] [--shared] git-init-db [--template=<template_directory>] [--shared[=<permissions>]]
- Provide the directory from which templates will be used.
- The default template directory is /usr/share/git-core/templates.
+Provide the directory from which templates will be used. The default template
+directory is /usr/share/git-core/templates.
When specified, <template_directory> is used as the source of the template
+files rather than the default. The template files include some directory
+structure, some suggested "exclude patterns", and copies of non-executing
+"hook" files. The suggested patterns and hook files are all modifiable and
+extensible.
- Specify that the git repository is to be shared amongst several users.
+Specify that the git repository is to be shared amongst several users. This
+allows users belonging to the same group to push into that
+repository. When specified, the config variable "core.sharedRepository" is
+set so that files and directories under $GIT_DIR are created with the
+requested permissions. When not specified, git will use permissions reported
+by umask(2).
The option can have the following values, defaulting to group if no value
+is given:
+umask (or false): Use permissions reported by umask(2). The default,
+ when --shared is not specified.
+
+group (or true): Make the repository group-writable, (and g+sx, since
+ the git group may be not the primary group of all users).
+
+all (or world or everybody): Same as group, but make the repository
+ readable by all users.
+SYNOPSIS
OPTIONS
+
If --template=<template_directory> is specified, <template_directory> -is used as the source of the template files rather than the default. -The template files include some directory structure, some suggested -"exclude patterns", and copies of non-executing "hook" files. The -suggested patterns and hook files are all modifiable and extensible.
If the $GIT_DIR environment variable is set then it specifies a path to use instead of ./.git for the base of the repository.
If the object storage directory is specified via the $GIT_OBJECT_DIRECTORY environment variable then the sha1 directories are created underneath - otherwise the default $GIT_DIR/objects directory is used.
-A shared repository allows users belonging to the same group to push into that -repository. When specifying --shared the config variable "core.sharedRepository" -is set to true so that directories under $GIT_DIR are made group writable -(and g+sx, since the git group may be not the primary group of all users).
Running git-init-db in an existing repository is safe. It will not overwrite things that are already there. The primary reason for rerunning git-init-db is to pick up newly added templates.
@@ -363,7 +386,7 @@ add all existing file to the index