Re: [PATCH v2] run-command.c: print env vars when GIT_TRACE is set
- Date: Thu, 11 Jan 2018 10:20:01 -0800
- From: Stefan Beller <sbeller@xxxxxxxxxx>
- Subject: Re: [PATCH v2] run-command.c: print env vars when GIT_TRACE is set
On Thu, Jan 11, 2018 at 9:53 AM, Brandon Williams <bmwill@xxxxxxxxxx> wrote:
> On 01/11, Nguyễn Thái Ngọc Duy wrote:
>> Occasionally submodule code could execute new commands with GIT_DIR set
>> to some submodule. GIT_TRACE prints just the command line which makes it
>> hard to tell that it's not really executed on this repository.
>> Print modified env variables (compared to parent environment) in this
>> case. Actually only modified or new variables are printed. Variable
>> deletion is suppressed because they are often used to clean up
>> repo-specific variables that git passes around between processes. When
>> submodule code executes commands on another repo, it clears all these
>> variables, _many_ of these, that make the output really noisy.
>> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx>
>> v2 fixes up commit message to clarify about "env delta" and why var
>> deletion is not printed.
>> It also keeps child_process tracing in one place/function, this
>> should make it easier to trace more e.g. cwd and stuff.
>> Though, Stefan, while i'm not opposed to trace every single setting
>> in child_process, including variable deletion, cwd and even more, it
>> may be not that often needed for a "casual" developer.
>> I suggest we have something like $GIT_TRACE_EXEC instead that could
>> be super verbose when we need it and leave $GIT_TRACE with a
>> reasonable subset.
Makes sense. Thanks for working on this!
Code&commit msg look good to me. I agree with Brandon on the
comments grammar to have a missing piece.