threads / discuss / 54920

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

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

## tl;dr

One message between Jan 2, 2021 and Jan 2, 2021.

replies: 0people: 1as markdown or json

Andy Wharton· Jan 2, 2021, 17:45 UTC · lore
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.

← back to recent threads