Merge branch 'jt/partial-clone-submodule-1'

Prepare the internals for lazily fetching objects in submodules
from their promisor remotes.

* jt/partial-clone-submodule-1:
  promisor-remote: teach lazy-fetch in any repo
  run-command: refactor subprocess env preparation
  submodule: refrain from filtering GIT_CONFIG_COUNT
  promisor-remote: support per-repository config
  repository: move global r_f_p_c to repo struct
This commit is contained in:
Junio C Hamano
2021-07-16 17:42:53 -07:00
14 changed files with 196 additions and 82 deletions

View File

@@ -486,4 +486,14 @@ int run_processes_parallel_tr2(int n, get_next_task_fn, start_failure_fn,
task_finished_fn, void *pp_cb,
const char *tr2_category, const char *tr2_label);
/**
* Convenience function which prepares env_array for a command to be run in a
* new repo. This adds all GIT_* environment variables to env_array 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
* cache.h for more information.
*/
void prepare_other_repo_env(struct strvec *env_array, const char *new_git_dir);
#endif