Re: RFC/Discussion - Submodule UX Improvements
- From
Emily Shaffer <emilyshaffer@google.com>
- Date
- Apr 20, 2021, 18:49 UTC
- Message-ID
- <YH8iTDNZpsoCu+lx@google.com>
- In-Reply-To
- <YH1+C47AErrCUkHI@pug.qqx.org>
On Mon, Apr 19, 2021 at 08:56:43AM -0400, Aaron Schrab wrote:
Show 24 quoted lines
>
> At 16:36 -0700 16 Apr 2021, Emily Shaffer <emilyshaffer@google.com> wrote:
> > - git switch / git checkout
>
> (snip)
>
> > 4. A new branch with the same name is created on each submodule.
> > a. If there is a naming conflict, we could prompt the user to resolve it, or
> > we could just check out the branch by that name and print a warning to the
> > user with advice on how to solve it (cd submodule && git switch -c
> > different-branch-name HEAD@{1}). Maybe we could skip the warning/advice if
> > the tree is identical to the tree we would have used as the start point
> > (that is, the user switched branches in the submodule, then said "oh crap"
> > and went back and switched branches in the superproject).
> > b. Tracking info is set appropriately on each new branch to the upstream of
> > the branch referenced by the parent of the new superproject commit, OR to
> > the default branch's upstream.
> > 5. The new branch is checked out on each of the submodules.
>
> In many cases the branch name for the superproject isn't going to be
> appropriate for submodules.
>
> This seems likely to create a LOT of junk branches. Do you also have a
> proposal for cleaning those up?Yeah, I think we have a point internally for "clean up alllll the submodule branches that are unreferenced/already merged". You're right that in a workflow where I have a superproject with eight submodules, because I need them to build, but only do active development on one submodule out of the eight, I'll have a ton of junk refs in the other seven submodules. Yuck :)
- Emily