Re: [RFC 2/2] Revert "submodule.c: fetch in submodules git directory instead of in worktree"
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Nov 10, 2020, 15:08 UTC
- Message-ID
- <nycvar.QRO.7.76.6.2011101607250.18437@tvgsbejvaqbjf.bet>
- In-Reply-To
- <1604910829-49109-3-git-send-email-peter.kaestle@nokia.com>
Hi Peter,
On Mon, 9 Nov 2020, Peter Kaestle wrote:
> This reverts commit a62387b3fc9f5aeeb04a2db278121d33a9caafa7 and sets > the "fetching a superproject containing an uninitialized sub/sub > project" testcase to expect success.
Just like the cover letter, this commit message might be technically correct, but leaves me (and probably every future reader) wondering _why_ you would want this change.
Maybe this can be improved?
Ciao, Dscho
Show 64 quoted lines
>
> Signed-off-by: Peter Kaestle <peter.kaestle@nokia.com>
> ---
> submodule.c | 14 ++++----------
> t/t5526-fetch-submodules.sh | 2 +-
> 2 files changed, 5 insertions(+), 11 deletions(-)
>
> diff --git a/submodule.c b/submodule.c
> index b3bb59f..eef5204e 100644
> --- a/submodule.c
> +++ b/submodule.c
> @@ -499,12 +499,6 @@ void prepare_submodule_repo_env(struct strvec *out)
> DEFAULT_GIT_DIR_ENVIRONMENT);
> }
>
> -static void prepare_submodule_repo_env_in_gitdir(struct strvec *out)
> -{
> - prepare_submodule_repo_env_no_git_dir(out);
> - strvec_pushf(out, "%s=.", GIT_DIR_ENVIRONMENT);
> -}
> -
> /*
> * Initialize a repository struct for a submodule based on the provided 'path'.
> *
> @@ -1455,8 +1449,8 @@ static int get_next_submodule(struct child_process *cp,
> if (task->repo) {
> struct strbuf submodule_prefix = STRBUF_INIT;
> child_process_init(cp);
> - cp->dir = task->repo->gitdir;
> - prepare_submodule_repo_env_in_gitdir(&cp->env_array);
> + cp->dir = task->repo->worktree;
> + prepare_submodule_repo_env(&cp->env_array);
> cp->git_cmd = 1;
> if (!spf->quiet)
> strbuf_addf(err, _("Fetching submodule %s%s\n"),
> @@ -1505,9 +1499,9 @@ static int get_next_submodule(struct child_process *cp,
> spf->prefix, task->sub->path);
>
> child_process_init(cp);
> - prepare_submodule_repo_env_in_gitdir(&cp->env_array);
> + prepare_submodule_repo_env(&cp->env_array);
> cp->git_cmd = 1;
> - cp->dir = task->repo->gitdir;
> + cp->dir = task->repo->worktree;
>
> strvec_init(&cp->args);
> strvec_pushv(&cp->args, spf->args.v);
> diff --git a/t/t5526-fetch-submodules.sh b/t/t5526-fetch-submodules.sh
> index 9fbd481..236e26a 100755
> --- a/t/t5526-fetch-submodules.sh
> +++ b/t/t5526-fetch-submodules.sh
> @@ -729,7 +729,7 @@ add_commit_push()
> git -C "$dir" push
> }
>
> -test_expect_failure 'fetching a superproject containing an uninitialized sub/sub project' '
> +test_expect_success 'fetching a superproject containing an uninitialized sub/sub project' '
> # does not depend on any previous test setups
>
> for repo in outer middle inner
> --
> 2.6.2
>
>