@@ -8,17 +8,47 @@ git-init-db - Creates an empty git repository
88
99SYNOPSIS
1010--------
11- 'git-init-db' [--template=<template_directory>] [--shared]
11+ 'git-init-db' [--template=<template_directory>] [--shared[=<permissions>] ]
1212
1313
1414OPTIONS
1515-------
16+
17+ --
18+
1619--template=<template_directory>::
17- Provide the directory from which templates will be used.
18- The default template directory is `/usr/share/git-core/templates`.
1920
20- --shared::
21- Specify that the git repository is to be shared amongst several users.
21+ Provide the directory from which templates will be used. The default template
22+ directory is `/usr/share/git-core/templates`.
23+
24+ When specified, `<template_directory>` is used as the source of the template
25+ files rather than the default. The template files include some directory
26+ structure, some suggested "exclude patterns", and copies of non-executing
27+ "hook" files. The suggested patterns and hook files are all modifiable and
28+ extensible.
29+
30+ --shared[={false|true|umask|group|all|world|everybody}]::
31+
32+ Specify that the git repository is to be shared amongst several users. This
33+ allows users belonging to the same group to push into that
34+ repository. When specified, the config variable "core.sharedRepository" is
35+ set so that files and directories under `$GIT_DIR` are created with the
36+ requested permissions. When not specified, git will use permissions reported
37+ by umask(2).
38+
39+ The option can have the following values, defaulting to 'group' if no value
40+ is given:
41+
42+ - 'umask' (or 'false'): Use permissions reported by umask(2). The default,
43+ when `--shared` is not specified.
44+
45+ - 'group' (or 'true'): Make the repository group-writable, (and g+sx, since
46+ the git group may be not the primary group of all users).
47+
48+ - 'all' (or 'world' or 'everybody'): Same as 'group', but make the repository
49+ readable by all users.
50+
51+ --
2252
2353
2454DESCRIPTION
@@ -29,24 +59,13 @@ template files.
2959An initial `HEAD` file that references the HEAD of the master branch
3060is also created.
3161
32- If `--template=<template_directory>` is specified, `<template_directory>`
33- is used as the source of the template files rather than the default.
34- The template files include some directory structure, some suggested
35- "exclude patterns", and copies of non-executing "hook" files. The
36- suggested patterns and hook files are all modifiable and extensible.
37-
3862If the `$GIT_DIR` environment variable is set then it specifies a path
3963to use instead of `./.git` for the base of the repository.
4064
4165If the object storage directory is specified via the `$GIT_OBJECT_DIRECTORY`
4266environment variable then the sha1 directories are created underneath -
4367otherwise the default `$GIT_DIR/objects` directory is used.
4468
45- A shared repository allows users belonging to the same group to push into that
46- repository. When specifying `--shared` the config variable "core.sharedRepository"
47- is set to 'true' so that directories under `$GIT_DIR` are made group writable
48- (and g+sx, since the git group may be not the primary group of all users).
49-
5069Running `git-init-db` in an existing repository is safe. It will not overwrite
5170things that are already there. The primary reason for rerunning `git-init-db`
5271is to pick up newly added templates.
0 commit comments