gitcli: document that command line trumps config and env
We centrally explain that "--no-whatever" is the way to countermand the "--whatever" option. Explain that a configured default and the value specified by an environment variable can be overridden by the corresponding command line option, too. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Jan 16, 2025 at 18:05 UTC
4ad47d2de3cf71686a0dffcdda069cbd202938bd
1 file changed
+17
Documentation/gitcli.txt
+17
@@ -152,6 +152,23 @@ can use `--no-track` to override that behaviour. The same goes for `--color`
152
and `--no-color`.
153
154
155
+Options trump configuration and environment
156
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
157
+
158
+When there is a configuration variable or an environment variable
159
+that tweak the behaviour of an aspect of a Git command, and also a
160
+command line option that tweaks the same, the command line option
161
+overrides what the configuration and/or environment variable say.
162
+
163
+For example, the `user.name` configuration variable is used to
164
+specify the human-readable name used by the `git commit` command to
165
+record the author and the committer name in a newly created commit.
166
+The `GIT_AUTHOR_NAME` environment variable, if set, takes precedence
167
+when deciding what author name to record. The `--author=<author>`
168
+command line option of the `git commit` command, when given, takes
169
+precedence over these two sources of information.
170
+
171
+
172
Aggregating short options
173
~~~~~~~~~~~~~~~~~~~~~~~~~
174
Commands that support the enhanced option parser allow you to aggregate short