Re: [PATCH v5 2/8] config: add new way to pass config via `--config-env`
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 23, 2020, 21:35 UTC
- Message-ID
- <xmqq5z4s6w8w.fsf@gitster.c.googlers.com>
- In-Reply-To
- <56c9221c4cc8c3e52823938938e3f65a3433f9bf.1608104755.git.ps@pks.im>
Patrick Steinhardt <ps@pks.im> writes:
> +--config-env=<name>=<envvar>:: > + Like `-c <name>=<var>` except the value is the name of an > + environment variable from which to retrieve the value. Unlike
Let's avoid overusing the word "value", as it can refer to <name>=<envvar> as the whole (which is the value given to --config-env), or <envvar> itself (which may appear to the value given to <name>), or the value in the environment veraible.
Like `-c <name>=<value>`, give configuration variable '<name>' a value, where <envvar> is the name of an environment variable from which to retrieve the value.
or something along that line.
> + `-c` there is no shortcut for directly setting the value to an > + empty string, instead the environment variable itself must be > + set to the empty strin. Errors if the `<envvar>` does not exist
set to the empty string. It is an error if the ...
> + in the environment. `<envvar>` may not contain an equals sign > + to avoid ambiguity with `<name>`s which contain one.
which may contain one.
Show 10 quoted lines
> + This is useful for cases where you want to pass transitory > + configuration options to git, but are doing so on OS's where > + other processes might be able to read your cmdline > + (e.g. `/proc/self/cmdline`), but not your environ > + (e.g. `/proc/self/environ`). That behavior is the default on > + Linux, but may not be on your system. > + > + Note that this might add security for variables such as > + `http.extraHeader` where the sensitive information is part of > + the value, but not e.g. `url.<base.insteadOf` where the
"url.<base>.insteadOf"
> + sensitive information can be part of the key.
When writing multi-paragraph description, the second and later paragraphs need to be dedented and the paragraph breaks are denoted not by a blank line but by a line with only a single '+' on it.
I didn't look at the implementation or tests, as I think it hasn't changed since the last round, and the last round was looked at by Peff already.
Thanks.