Re: Git Large Object Support Proposal
- From
Jeff King <peff@peff.net>
- Date
- Mar 20, 2009, 04:46 UTC
- Message-ID
- <20090320044609.GC27160@coredump.intra.peff.net>
- In-Reply-To
- <7vzlfh5b7y.fsf@gitster.siamese.dyndns.org>
On Thu, Mar 19, 2009 at 04:44:49PM -0700, Junio C Hamano wrote:
Show 14 quoted lines
> Aha, that sounds like you can just maintain a set of out-of-tree symbolic > links that you keep track of, and let other people (e.g. rsync) deal with > the complexity of managing that side of the world. > > And I think you can start experimenting it without any change to the core > datastructures. In your single-page web site in which its sole html file > embeds an mpeg movie, you keep track of these two things in git: > > porn-of-the-day.html > porn-of-the-day.mpg -> ../media/6066f5ae75ec.mpg > > and any time you want to feed a new movie, you update the symlink to a > different one that lives outside the source-controlled tree, while > arranging the link target to be updated out-of-band.
I have a repo like this (not porn, but large files :) ) and I use a similar solution. Instead of large blobs, I have stub files containing a URL, and the make process pulls them as necessary. It works pretty well in practice. I don't bother with naming the files by sha-1 but instead give them human-readable names, since in my case they are generally immutable (i.e., one a name is assigned, the content doesn't change).
-Peff