aboutsummaryrefslogtreecommitdiff
path: root/run-command.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2026-03-12 14:09:05 -0700
committerJunio C Hamano <gitster@pobox.com>2026-03-12 14:09:05 -0700
commit03161747b412fe739d8a7ef631769b3d8f60d56f (patch)
tree53971ec6e6ee40b89ccd2f2be909e1bf8fca8541 /run-command.h
parent67006b9db8b772423ad0706029286096307d2567 (diff)
parente87493b9b4876e8278062af70cf2d97f47c45e60 (diff)
downloadgit-03161747b412fe739d8a7ef631769b3d8f60d56f.tar.xz
Merge branch 'ds/for-each-repo-w-worktree'
"git for-each-repo" started from a secondary worktree did not work as expected, which has been corrected. * ds/for-each-repo-w-worktree: for-each-repo: simplify passing of parameters for-each-repo: work correctly in a worktree run-command: extract sanitize_repo_env helper for-each-repo: test outside of repo context
Diffstat (limited to 'run-command.h')
-rw-r--r--run-command.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/run-command.h b/run-command.h
index e1ca965b5b..428d76ebd6 100644
--- a/run-command.h
+++ b/run-command.h
@@ -531,12 +531,17 @@ struct run_process_parallel_opts
void run_processes_parallel(const struct run_process_parallel_opts *opts);
/**
+ * 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 sanitize_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
+ * sanitize_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);