From: Junio C Hamano <gitster@pobox.com>
To: Jeff King <peff@peff.net>
Cc: Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>,
git@vger.kernel.org, fastcat@gmail.com,
Eric Sunshine <sunshine@sunshineco.com>,
Patrick Steinhardt <ps@pks.im>,
Phillip Wood <phillip.wood123@gmail.com>,
Derrick Stolee <stolee@gmail.com>
Subject: Re: [PATCH v3 2/4] run-command: extract clear_local_repo_env helper
Date: Mon, 02 Mar 2026 10:35:03 -0800 [thread overview]
Message-ID: <xmqqldga13mw.fsf@gitster.g> (raw)
In-Reply-To: <20260302180324.GC28275@coredump.intra.peff.net> (Jeff King's message of "Mon, 2 Mar 2026 13:03:24 -0500")
Jeff King <peff@peff.net> writes:
>> +/**
>> + * Unset all local-repo GIT_* variables in env; see local_repo_env in
>> + * environment.h. GIT_CONFIG_PARAMETERS and GIT_CONFIG_COUNT are preserved
>> + * to pass -c and --config-env options from the parent process.
>> + */
>> +void clear_local_repo_env(struct strvec *env);
>
> I worry that the name is potentially confusing here, since it is not
> just clearing local_repo_env, but making a few exceptions. But I don't
> really have a better name. We called this "other_repo_env" in the
> existing function, which is equally opaque. I dunno, maybe the
> documentation you added would be sufficient.
perhaps "clear_local" -> "sanitize" or something, with "env" ->
"other_env" to clarify that we are not emptying ours, but the one
that will be used by somebody else?
> Speaking of which, the documentation for prepare_other_repo_env() is now
> somewhat redundant. If we ever change the behavior here, we'll have to
> remember to touch both spots.
>
> So what about squashing in:
> diff --git a/run-command.h b/run-command.h
> index 76b29d4832..882caeccc8 100644
> --- a/run-command.h
> +++ b/run-command.h
> @@ -518,11 +518,9 @@ void clear_local_repo_env(struct strvec *env);
>
> /**
> * Convenience function which prepares env for a command to be run in a
> - * new repo. This adds all GIT_* environment variables to env with the
> - * exception of GIT_CONFIG_PARAMETERS and GIT_CONFIG_COUNT (which cause the
> - * corresponding environment variables to be unset in the subprocess) and adds
> - * an environment variable pointing to new_git_dir. See local_repo_env in
> - * environment.h for more information.
> + * new repo. This removes variables pointing to the local repository (using
> + * clear_local_repo_env() above), and adds an environment variable pointing to
> + * new_git_dir.
> */
> void prepare_other_repo_env(struct strvec *env, const char *new_git_dir);
That reads very well.
next prev parent reply other threads:[~2026-03-02 18:35 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-24 3:32 [PATCH 0/2] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-02-24 3:32 ` [PATCH 1/2] for-each-repo: stop using the_repository Derrick Stolee via GitGitGadget
2026-02-24 9:18 ` Patrick Steinhardt
2026-02-24 12:07 ` Derrick Stolee
2026-02-24 3:32 ` [PATCH 2/2] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-02-24 3:34 ` Eric Sunshine
2026-02-24 9:18 ` Jeff King
2026-02-24 12:11 ` Derrick Stolee
2026-02-25 13:23 ` Jeff King
2026-02-24 9:18 ` Patrick Steinhardt
2026-02-24 21:35 ` [PATCH v2 0/2] " Derrick Stolee via GitGitGadget
2026-02-24 21:35 ` [PATCH v2 1/2] for-each-repo: test outside of repo context Derrick Stolee via GitGitGadget
2026-02-24 21:35 ` [PATCH v2 2/2] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-02-24 21:47 ` Junio C Hamano
2026-02-25 11:44 ` Derrick Stolee
2026-02-25 13:13 ` Jeff King
2026-02-26 15:29 ` Derrick Stolee
2026-02-26 16:21 ` Junio C Hamano
2026-02-26 18:14 ` Phillip Wood
2026-02-27 19:41 ` Junio C Hamano
2026-02-27 22:28 ` Derrick Stolee
2026-02-27 22:45 ` Jeff King
2026-02-27 22:42 ` Jeff King
2026-03-02 15:31 ` Derrick Stolee
2026-03-02 18:09 ` Jeff King
2026-03-02 15:36 ` [PATCH v3 0/4] " Derrick Stolee via GitGitGadget
2026-03-02 15:36 ` [PATCH v3 1/4] for-each-repo: test outside of repo context Derrick Stolee via GitGitGadget
2026-03-02 17:56 ` Jeff King
2026-03-02 18:31 ` Junio C Hamano
2026-03-02 18:36 ` Derrick Stolee
2026-03-02 15:36 ` [PATCH v3 2/4] run-command: extract clear_local_repo_env helper Derrick Stolee via GitGitGadget
2026-03-02 18:03 ` Jeff King
2026-03-02 18:35 ` Junio C Hamano [this message]
2026-03-02 18:37 ` Derrick Stolee
2026-03-02 15:36 ` [PATCH v3 3/4] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-03-02 18:06 ` Jeff King
2026-03-02 18:39 ` Derrick Stolee
2026-03-02 21:32 ` Junio C Hamano
2026-03-02 15:36 ` [PATCH v3 4/4] for-each-repo: simplify passing of parameters Derrick Stolee via GitGitGadget
2026-03-02 18:06 ` Jeff King
2026-03-03 17:31 ` [PATCH v4 0/4] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-03-03 17:31 ` [PATCH v4 1/4] for-each-repo: test outside of repo context Derrick Stolee via GitGitGadget
2026-03-03 17:31 ` [PATCH v4 2/4] run-command: extract sanitize_repo_env helper Derrick Stolee via GitGitGadget
2026-03-03 17:31 ` [PATCH v4 3/4] for-each-repo: work correctly in a worktree Derrick Stolee via GitGitGadget
2026-03-03 17:31 ` [PATCH v4 4/4] for-each-repo: simplify passing of parameters Derrick Stolee via GitGitGadget
2026-03-05 1:20 ` [PATCH v4 0/4] for-each-repo: work correctly in a worktree Jeff King
2026-03-05 6:14 ` Patrick Steinhardt
2026-03-05 17:23 ` Derrick Stolee
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqldga13mw.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=fastcat@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=peff@peff.net \
--cc=phillip.wood123@gmail.com \
--cc=ps@pks.im \
--cc=stolee@gmail.com \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.