Re: Memory issue with fast-import, why track branches?
From: Felipe Contreras <hidden>
Date: 2016-06-15 22:45:48
On Sun, Dec 21, 2008 at 10:10 AM, John Chapman [off-list ref] wrote:
My first response was along the lines of "Why the heck are you storing sha1's like that!?", until I realised that you're not storing actual git sha1's, but mtn's hashes, which does make sense.
Yes :)
I'm doing something very similar with my perforce scripts, however I am doing a bit more magic instead of making so many branches. Instead of making branches, I make a tag instead, for each and every changeset. Every time I make a new git commit, if I need to do it from a tag, I first read the tag and determine the sha1 I should use, and use that instead.
Well, simple tags and branches are exactly the same thing: refs. tags are in 'refs/tags' and branches in 'refs/heads'; 'refs/mtn' are not really branches.
Alternatively, you could choose to manage your mapping yourself, and write them to a .git/mtg-git-map file.
The advantage of my approach is that the git tools handle all the mtn sha1's almost as good as git sha1's, I just need to prepend 'mtn/'. Also, git name-rev finds the mtn revision of a git commit. It' all so convenient. The only problem is that fast-import seems to be doing something wrong with those "branches". -- Felipe Contreras