threads / discuss / 56650

add/init all git submodules that are referenced in .gitmodules

Subject: add/init all git submodules that are referenced in .gitmodules

## tl;dr

2 messages between Oct 5, 2021 and Oct 6, 2021.

replies: 1people: 2as markdown or json

Alexander Mills· Oct 5, 2021, 23:52 UTC · lore
I am looking for this feature:
https://stackoverflow.com/a/69458406/1223975
it is really confusing as to why it doesn't exist
-- 
Alexander D. Mills
New cell phone # (415)730-1805
linkedin.com/in/alexanderdmills

Sender notified by
Mailtrack 10/05/21, 04:51:40 PM
Remove
Jeff King· Oct 6, 2021, 19:28 UTC · re: Alexander Mills · lore

Re: add/init all git submodules that are referenced in .gitmodules

On Tue, Oct 05, 2021 at 04:52:00PM -0700, Alexander Mills wrote:
Show 5 quoted lines
> I am looking for this feature:
> 
> https://stackoverflow.com/a/69458406/1223975
> 
> it is really confusing as to why it doesn't exist
I'm not sure I understand what is being asked for.

If you just want to initialize and populate all of the modules in .gitmodules (which is what I thought your subject line was asking for), then:

  git submodule update --init

will do that (though of course if you are cloning anyway, you can just say "--recurse-submodules).

But reading the original SO question, it is about finding repositories in the current directory that _aren't_ submodules, and then adding them. But those ones wouldn't be referenced in .gitmodules.

For that problem, no, I don't think there's an easy command, and you have to dig for them (though "git ls-files -o --exclude-standard" is perhaps a good way to locate them). But it's also not something I'd expect to be a very common operation, which is why there's not an existing command to do it.

-Peff

← back to recent threads