threads / discuss / 50730

Init of submodule within subtree not working

Subject: Init of submodule within subtree not working

## tl;dr

One message between Mar 13, 2019 and Mar 13, 2019.

replies: 0people: 1as markdown or json

Thomas Kitzinger· Mar 13, 2019, 15:06 UTC · lore
 Hello,

currently I’m having trouble using subtree to include a subproject that itself contains submodules.

$ git subtree add --prefix folderB/subtreeproject https:\\xx master --squash
The resulting structure is something like the following:
superproject/
├── .git/
├── .gitmodules
└── folderA/
    ├── someFileA
    └── submoduleA /
└── folderB/
    ├── someFileB
    └── subtreeproject/   <= THE SUBTREE
        ├── .gitmodules
        ├── someFolder/
        └── submoduleInSubtree/   <= THE SUBMODULE IN SUBTREE
The subtreeproject contains its own submodule and therefore its own .gitmodules.

If I now run $ git submodule update --init --remote I get the error fatal: No url found for submodule path ‘folderB/subtreeproject/submoduleInSubtree’ in .gitmodules

The only way I could get the submodule initialized is by manually copying the contents of the folder/subtreeproject/.gitmodules to the top-level .gitmodules and adjusting the path accordingly, which is quite annoying.

Is this behavior intended? Isn’t there a more elegant solution?

Couldn’t git respect .gitmodules not only in the root directory but also in any sub-directory? I learned it already works for submodules within other submodules, but apparently not for submodules within subtrees.

My git version: $ git version 2.21.0.windows.1

Best regards
Thomas Kitzinger

← back to recent threads