13
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
14
[-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare]
15
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
16
- [--super-prefix=<path>]
16
+ [--super-prefix=<path>] [--config-env <name>=<envvar>]
17
<command> [<args>]
18
19
DESCRIPTION
80
foo.bar= ...`) sets `foo.bar` to the empty string which `git config
81
--type=bool` will convert to `false`.
82
83
+--config-env=<name>=<envvar>::
84
+ Like `-c <name>=<value>`, give configuration variable
85
+ '<name>' a value, where <envvar> is the name of an
86
+ environment variable from which to retrieve the value. Unlike
87
+ `-c` there is no shortcut for directly setting the value to an
88
+ empty string, instead the environment variable itself must be
89
+ set to the empty string. It is an error if the `<envvar>` does not exist
90
+ in the environment. `<envvar>` may not contain an equals sign
91
+ to avoid ambiguity with `<name>`s which contain one.
92
++
93
+This is useful for cases where you want to pass transitory
94
+configuration options to git, but are doing so on OS's where
95
+other processes might be able to read your cmdline
96
+(e.g. `/proc/self/cmdline`), but not your environ
97
+(e.g. `/proc/self/environ`). That behavior is the default on
98
+Linux, but may not be on your system.
99
++
100
+Note that this might add security for variables such as
101
+`http.extraHeader` where the sensitive information is part of
102
+the value, but not e.g. `url.<base>.insteadOf` where the
103
+sensitive information can be part of the key.
104
+
105
--exec-path[=<path>]::
106
Path to wherever your core Git programs are installed.
107
This can also be controlled by setting the GIT_EXEC_PATH