On Tue, 10 Apr 2007, Alex Riesen wrote: > > On 4/10/07, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > That said, it's definitely designed so that if you want to automate > > tracking other peoples bare repositories, you can do so: you'd just have > > to *really* script it with something like > > > > git update-index --cacheinfo 0160000 <sha1> <dirname> > > > > (which is how you could create those commits to a bare repo too, so it's > > not like this is really even any different) > > Nice :) Well, the *really* nice thing about doing it like this is that you can actually update subprojects without even having them even be *local* to where you do the superproject. IOW, you could literally build up the superproject by saying that you want to track "all git projects I care about" somewhere else, and do a series of automated git ls-remote sub-project-xyzzy tracking-branch-xyzzy | ... and basically create the "superproject" without ever actually downloading or populating the subprojects at all. Then, if everything is set up correctly, you can basically use the superproject as an "auto-mirror" - whenever you want to get all the projects you care about, you just clone that superproject, and (once you've taught "git clone" to fetch the subprojects, of course ;^) you'd basically fetch them all from their appropriate locations - without ever having the actual superproject have to even *really* care about it. So basically, a superproject could be used as just a "gathering point", without having to actually *contain* any of the subprojects. The actual sources for subprojects may be on totally different servers. That's what real distribution is all about. Linus - 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