ab/remove--super-prefix & ab/submodule-no-abspath (was: What's cooking in git.git (Nov 2022, #05; Tue, 22))
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Nov 22, 2022, 23:06 UTC
- Message-ID
- <221123.86edtua8i6.gmgdl@evledraar.gmail.com>
- In-Reply-To
- <xmqqfseargo4.fsf@gitster.g>
On Wed, Nov 23 2022, Junio C Hamano wrote:
Show 27 quoted lines
> * ab/remove--super-prefix (2022-11-21) 11 commits
> - fetch: rename "--submodule-prefix" to "--super-prefix"
> - read-tree: add "--super-prefix" option, eliminate global
> - submodule--helper: convert "{update,clone}" to their own "--super-prefix"
> - submodule--helper: convert "status" to its own "--super-prefix"
> - submodule--helper: convert "sync" to its own "--super-prefix"
> - submodule--helper: convert "foreach" to its own "--super-prefix"
> - submodule--helper: don't use global --super-prefix in "absorbgitdirs"
> - submodule.c & submodule--helper: pass along "super_prefix" param
> - read-tree + fetch tests: test failing "--super-prefix" interaction
> - Merge branch 'ab/submodule-no-abspath' into ab/remove--super-prefix
> - Merge branch 'ab/submodule-helper-prep-only' into ab/remove--super-prefix
> (this branch uses ab/submodule-helper-prep-only and ab/submodule-no-abspath.)
>
> Remove the top-level `--super-prefix` option.
> source: <cover-v3-0.9-00000000000-20221119T122853Z-avarab@gmail.com>
>
>
> * ab/submodule-no-abspath (2022-11-09) 1 commit
> (merged to 'next' on 2022-11-18 at 34d0accc7b)
> + submodule--helper absorbgitdirs: no abspaths in "Migrating git..."
> (this branch is used by ab/remove--super-prefix.)
>
> Remove an absolute path in the "Migrating git directory" message.
>
> Will merge to 'master'.
> source: <patch-1.1-34b54fdd9bb-20221109T020347Z-avarab@gmail.com>Glen pointed out an issue in ab/submodule-no-abspath which I just submitted a fix-on-top for in [1].
There will be a merge conflict with ab/remove--super-prefix, but one
which I tried to make easy to resolve when crafting [1]. The resolution
is:
diff --git a/submodule.c b/submodule.c
remerge CONFLICT (content): Merge conflict in submodule.c
index ab2e61617d8..08366045ffe 100644
--- a/submodule.c
+++ b/submodule.c
@@ -2267,7 +2267,6 @@ static void relocate_single_git_dir_into_superproject(const char *path,
const char *rel_new_git_dir;
struct strbuf new_gitdir = STRBUF_INIT;
const struct submodule *sub;
- const char *super_prefix = get_super_prefix();
const char *sp = super_prefix ? super_prefix : "";
if (submodule_uses_worktrees(path))
@@ -2298,12 +2297,7 @@ static void relocate_single_git_dir_into_superproject(const char *path,
&new_gitdir);
fprintf(stderr, _("Migrating git directory of '%s%s' from '%s' to '%s'\n"),
-<<<<<<< 065be1da895 (submodule absorbgitdirs: use relative <from> and <to> paths)
sp, path, rel_old_git_dir, rel_new_git_dir);
-=======
- super_prefix ? super_prefix : "", path,
- real_old_git_dir + off, real_new_git_dir + off);
->>>>>>> 1aa4019527a (fetch: rename "--submodule-prefix" to "--super-prefix")
relocate_gitdir(path, real_old_git_dir, real_new_git_dir);Now, I expect that neither topic will make this upcoming release, and "ab/remove--super-prefix" will have at least one more re-roll per Glen's outstanding feedback.
Would you like to have such a re-roll sooner than later, and to have "ab/remove--super-prefix" built on "master" the existing "ab/submodule-no-abspath", or rebased for this fix-on-top? Or I could just wait until after the release when the dust settles and "ab/submodule-no-abspath" + this fix on top in [1] graduate to submit a v4. 1. https://lore.kernel.org/git/patch-1.1-065be1da895-20221122T224306Z-avarab@gmail.com/