On Friday 01 December 2006 23:26, Linus Torvalds wrote: > > On Fri, 1 Dec 2006, Josef Weidendorfer wrote: > > > > > > Well, I would actually argue that you may often want to have a supermodule > > > and then at least have the _option_ to decide to not fetch all the > > > submodules. > > > > If you want to allow this, you have to be able to cut off fetching the > > objects of the supermodule at borders to given submodules, the ones you > > do not want to track. With "border" I mean the submodule commit in some > > tree of the supermodule. > > > > This looks a little bit like a shallow clone > > No. > > I would say that it looks more like a "partial checkout" than a shallow > clone. > > A shallow clone limits the data in "time" - we have _some_ data, but we > don't have all of the history of that data. > > In contrast, a submodule that we don't fetch is an all-or-nothing > situation: we simply don't have the data at all, and it's really a matter > of simply not recursing into that submodule at all - much more like not > checking out a particular part of the tree. OK. I still think it should be about "limit in space" regarding the objects in the local repository. For a project containing "gcc" as submodule, and I am not interested in this submodule, there should be a way to not need to fetch all the objects from the gcc submodule at clone time. What about my other argument for a submodule namespace: You want to be able to move the relative root path of a submodule inside of your supermodule, but yet want to have a unique name for the submodule: - to be able to just clone a submodule without having to know the current position in HEAD - more practically, e.g. to be able to name a submodule independent from any current commit you are on in the supermodule, e.g. to be able to store some meta information about a submodule: - "Where is the official upstream of this submodule?" - "Should git allow to commit rewind actions of this submodule in the supermodule?" (which, AFAICS, exactly has the same problems as publishing a rewound branch: you will get into merge hell when you want to pull upstream changes into the supermodule) - "Should this submodule be checked out?" and so on. Josef - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html