----- Original Message ----- > From: "Jakub Narebski" <jnareb@xxxxxxxxx> > To: "NAKAMURA Takumi" <geek4civic@xxxxxxxxx> > Cc: "git" <git@xxxxxxxxxxxxxxx> > Sent: Thursday, June 9, 2011 7:18:09 AM > Subject: Re: Git is not scalable with too many refs/* > NAKAMURA Takumi <geek4civic@xxxxxxxxx> writes: > > > Hello, Git. It is my 1st post here. > > > > I have tried tagging each commit as "refs/tags/rXXXXXX" on git-svn > > repo locally. (over 100k refs/tags.) > [...] > > That's insane. You would do much better to mark each commit with > note. Notes are designed to be scalable. See e.g. this thread > > [RFD] Proposal for git-svn: storing SVN metadata (git-svn-id) in notes > http://article.gmane.org/gmane.comp.version-control.git/174657 As a reformed SVN user (i.e. not using it anymore ;]) I agree that 100k tags seems crazy, but I was contemplating doing the exact same thing as Takumi. Skimming that thread, I didn't see the key point (IMO): notes can map from commits to a "name" (or other information), tags map from a "name" to commits. I've seen two different workflows develop: 1) Hacking on some code in Git the programmer finds something wrong. Using Git tools he can pickaxe/bisect/etc. and find that the problem traces back to a commit imported from Subversion. 2) The programmer finds something wrong, asks coworker, coworker says "see bug XYZ", bug XYZ says "Fixed in r20356". I agree notes is the right answer for (1), but for (2) you really want a cross reference table from Subversion rev number to Git commit. In our office we created the cross reference table once by walking the Git tree and storing it as a file (we had some degenerate cases where one SVN rev mapped to multiple Git commits, but I don't remember the details), but it's not really usable from Git. Lightweight tags would be an awesome solution (if they worked). Perhaps a custom subcommand is a reasonable middle ground. Thanks, Stephen -- 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