Ramkumar Ramachandra wrote: > Great. Now, we just have to write refs/modules/<branch>/* at > commit-time. Actually, we have to update things in refs/modules/ everytime we update things in refs/heads/. In the case of a 'git branch -M' for example, refs/heads/<oldname> is rewritten to refs/heads/<newname>: similarly, refs/modules/<oldname>/ needs to be moved to refs/modules/<newname>/. There is one special case worth mentioning. Let's say I'm committing changes to link objects to a detached HEAD, b8bb3f. Then, I write refs/modules/b8bb3f/ at commit-time. A subsequent 'checkout -b' that updates refs/heads/<newbranch> will just have to move refs/modules/b8bb3f/ to refs/modules/<newbranch>/. The caveat is that I might commit to the detached HEAD and leave it hanging around until the next gc. So, gc will need to remove refs/modules/b8bb3f/ too, but that's not a pressing issue at the moment. -- 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