git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC] Branches with --recurse-submodules

From
Glen Choo <chooglen@google.com>
Date
Nov 23, 2021, 19:04 UTC
Message-ID
<kl6lbl2ak817.fsf@chooglen-macbookpro.roam.corp.google.com>
In-Reply-To
<30f6ee13-8db7-e983-fb87-ef038a3487a2@gmail.com>
Philippe Blain <levraiphilippeblain@gmail.com> writes:
Show 22 quoted lines
>> In favor of not letting users opt out: exposing fewer switches to users
>> makes it easier for them to get a good user experience. Instead of
>> giving users the ability to build-your-own UX, maintaining a small
>> configuration surface makes configuration easy and puts the onus back on
>> Git (or me, really :P) to make sure that the UX really works well for
>> all users, instead of opting out and saying "oh the user has
>> branches.recurseSubmodules=false, so I'll choose not to support them".
>> I think this stance is good from a product excellence perspective, but
>> it's an obvious risk.
>> 
>> A way forward might be:
>> 
>> * mitigate the breaking changes by flagging this with
>>    feature.experimental
>> * test this behavior with real users (aka internal) and iterate from
>>    there
>> 
>> Does that make sense? I'd like to make sure I'm not missing something
>> very big here.
>
> It does, but I think that we can still build a flexible product without
> compromising UI/UX :)

Agreed. The long term result might be that submodules + branches will always live behind its own flag (though I hope not..). One person's flexibility is another person's complexity, so we will need a lot of finesse in order to find the right tradeoff.

Show 11 quoted lines
>>> Also, I assume the new behaviour would carry over to 'git checkout -b' and
>>> 'git switch -c' ?
>>>> * `git switch --recurse-submodules topic` should checkout the branch
>>>>     `topic` in each of the repositories
>>>
>>> Nit: I guess you also include 'git checkout --r topic' here also ?
>> 
>> Yes and yes (I believe --r refers to --recurse-submodules?).
>
> Yes, and it works on the command-line ! ;) long options can be shortened
> if unambiguous, see 'man gitcli'.
Ah, TIL. Thanks :)
Previous: Philippe Blain
Message 11 of 11 in “[RFC] Branches with --recurse-submodules”
  1. Glen ChooNov 8, 2021
  2. Glen ChooNov 10, 2021
  3. rsbecker@nexbridge.comNov 10, 2021
  4. Glen ChooNov 10, 2021
  5. rsbecker@nexbridge.comNov 10, 2021
  6. Glen ChooNov 11, 2021
  7. Philippe BlainNov 12, 2021
  8. Philippe BlainNov 12, 2021
  9. Glen ChooNov 15, 2021
  10. Philippe BlainNov 23, 2021
  11. Glen ChooNov 23, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.