Pierre Habouzit <madcoder@xxxxxxxxxx> writes: > On Mon, Jul 28, 2008 at 09:40:22PM +0000, Avery Pennarun wrote: > > Further, if you don't have a separate .git directory for each > > submodule, you can't *switch* branches on the submodule independently > > of the supermodule in any obvious way. > > Yes you can, in what I propose you have a dummy .git in each submodule, > with probably an index, a HEAD and a config file (maybe some other > things along) to allow that especially. What you are (re)inventing here is something called gitlink (.git which is a file, or .gitlink file); not to be confused with 'sumbodule'/'commit' entry in a tree which is sometimes called gitlink. Alternate idea was 'unionfs' like "shadowing" .git, with 'core.gitdir' in .git/config (which would contain .git/HEAD and .git/index, and all missing files and config would be taken from `core.gitdir'). There was even some preliminary implementation IIRC, but AFAIR it was abandoned because of no "real usage". See http://permalink.gmane.org/gmane.comp.version-control.msysgit/1868 http://permalink.gmane.org/gmane.comp.version-control.git/72449 http://permalink.gmane.org/gmane.comp.version-control.git/72457 http://permalink.gmane.org/gmane.comp.version-control.git/72296 -- Jakub Narebski Poland ShadeHawk on #git -- 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