Junio C Hamano, Thu, May 17, 2007 07:21:40 +0200: > What I was "handwaving" (or "envisioning") was to have something > like this in .gitmodules: > > [subproject "kernel/"] > URL = git://git.kernel.org/pub/linux-2.4.git So, assuming .gitmodules is versioned (afaics, it is), it would mean that after a some unlucky git-pull, where someone changed the upstream .gitmodules ("linux-2.4" for whatever reason is changed to just "linux"). And suddenly all such local configuration is useless: > (or 2.6, depending on the revision of the superproject) and per > repository configuration would maps this with these two entries: > > [subproject "git://git.kernel.org/pub/linux-2.4.git"] > URL = http://www.kernel.org/pub/linux-2.4.git > > [subproject "git://git.kernel.org/pub/linux-2.6.git"] isn't there a typo somewhere around "2.6"? > URL = http://www.kernel.org/pub/linux-2.6.git because there is no URL to map from. why can't I just have _repo_ configuration: [subproject "kernel/"] URL = http://www.kernel.org/pub/linux-2.6.git ? It can be first-time cloned from the upstream, but it stays after people change it to suit their systems. They can depend on it not to be broken by upstream. > The intent is > > (1) "kernel/" directory is found to be a gitlink in the > tree/index; .gitmodules is consulted to find the > "URL", which is just a handle and the initial hint > > (2) That "initial hint" is used to look up the > subproject entry from the configuration, to find the > "real" URL that is used by this repository It is quite long-living to be just initial hint. And will be redundant after the hint loses all meaning (after some time it _will_ happen, sites do move around), and is just a strange looking mapping key. Can I suggest a part of repo configuration to be clonable? So that there is a something in .git/config.dist, which is _cloned_ with git-clone. The obviuos thing to put there would be subproject configuration, and maybe there will be something else in the future (I'd think of description, which is a separate file now, and as for now, the only way to get this description is to use gitweb or ssh). git-ls-remote could be made to show this "remote-accessible" configuration, in case someone have to update/compare local copy of this config. - 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