Expected behaviour of 'git submodule update --remote --recursive'?

From: Andy Wharton <hidden>
Date: 2021-01-02 17:47:04

Hi all,

I have three git repo's:
    A imports B as a submodule, and has "branch = ." set for B in .gitmodules
    B imports C as a submodule, and has "branch = ." set for C in .gitmodules

I had hoped that checking out a branch in A, and then running 'git
submodule update --remote --recursive' in A would checkout the latest
commit from that branch in the two submodules.

This works as expected for B (checks out the right SHA as a deteched
head), but because I'm left on a detached head the update fails for C
with a "branch configured to inherit branch from superproject"
message.

While I'm guessing this is the expected behaviour, is it possible to
make the "branch = ." option use the branch name from the parent
transitively? Or is there another mechanism I should be using to
achieve what I'm trying to do?

Andy.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help