[Kde-scm-interest] requirements on git itself: ignore-if-not-present submodules

Johannes Sixt j.sixt at viscovery.net
Mon Aug 18 08:48:14 CEST 2008

Thiago Macieira schrieb:
> Please follow my logic to see if this feature is needed and what it is:
> in the proposed structure for KDE using Git, we'd have one repository 
> called KDE.git, which contains submodule links to
> 	kdelibs
> 	kdepimlibs
> 	kdebase
> 	kdeaccessibility
> 	kdeadmin
> 	...
> That way, if someone wants to check out all of KDE, they only need to 
> clone that supermodule and tell it to initialise the submodules.
> We also retain the ability of saying "this commit in kdebase requires that 
> commit in kdelibs" by way of a supermodule commit.
> However, what happens if the developer only wants kdelibs, kdepimlibs and 
> kdebase?
> If you don't initialise the other submodules, git will think they were 
> removed. Your next commit to the KDE.git supermodule will remove the 
> link.

If this is the case, then it is a bug in git. The intention is that you
don't need to check-out all submodules, and when you make a commit in the
supermodule, then the submodule states recorded for the not checked-out
submodules must remain unchanged, and not be removed.

> So the feature I feel we need is for git submodule to ignore the 
> submodules that were not cloned.

This feature should already be present.

-- Hannes

More information about the Kde-scm-interest mailing list