On 6/1/07, Junio C Hamano <junkio@xxxxxxx> wrote:
Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> writes: > On Fri, 1 Jun 2007, Lars Hjemli wrote: > ... > Ack. I think the natural thing for a lot of cases is the trivial "module > name == path" case, so having to have > > [path "kernel"] > module = kernel > > for that case just sounds unnecessary. > > That said, I wonder if it wouldn't be more natural to do things the other > way around, because quite often a "module" (under CVS conventions) is a > *set* of directories, so with that in mind, it might be better to have the > mapping be something like this: > > [module "infrastructure"] > submodule = lib > submodule = build > > [submodule "lib"] > url = git://xyzzy/lib-1.2.3 > > [submodule "build"] > url = git://xyzzy/build-0.61 > > and make the rule be: > - submodules are named by their paths (ie "path == submodule") > - a module is a set of such submodules/paths > - if no "module" is defined, the default is to just use the > path/submodule name I take that if you do want to name a submodule differently from its (currently in-tree) path, you would do something like... [submodule "xyzzylib"] path = lib url = git://xyzzy/lib-1.2.3
The reason I wanted to use [path "lib"] submodule=xyzzylib url=git://xyzzy/lib-1.2.3 is that the git-submodule command always starts out with the submodule path, trying to map that to an url or a submodule name. My proposal allows $ name=$(GIT_CONFIG=.gitmodules git-config path."$path".submodule) $ url=$(GIT_CONFIG=.gitmodules git-config path."$path".url) Then Sven suggested to create a submodule section for the url, which would allow $ name=$(GIT_CONFIG=.gitmodules git-config path."$path".submodule) $ url=$(GIT_CONFIG=.gitmodules git-config submodule."$name".url) But I don't see an easy way to do the mapping from path to url/submodule with: [submodule "xyzzylib"] path=lib url=git://xyzzy/lib-1.2.3 Suggestions? -- larsh - 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