From: Jonathan Nieder Date: Wed, 19 Jan 2011 21:48:27 GMT Subject: Re: [PATCH 4/5] fast-export: Introduce --inline-blobs Message-ID: <20110119214827.GA31733@burratino> In-Reply-To: <7vtyh4smer.fsf@alter.siamese.dyndns.org> Junio C Hamano wrote: > Ramkumar Ramachandra writes: >> Introduce a new command-line option --inline-blobs that always inlines >> blobs instead of referring to them via marks or their original SHA-1 >> hash. [...] > Hmm, this smells somewhat fishy. > > Wasn't G-F-I designed to be a common stream format for other SCMs to > generate streams, so that importers and exporters can be written once for > each SCM to interoperate? Here is one way to sell it: With the inline blobs feature, fast-import backends have to maintain less state. Using it should speed up exporting. This is made optional because ... I haven't thought through whether it ought to be optional or measured the effect on import performance. A separate question is what an svn fast-import backend should do with all those blobs that are not ready to be written to dump. As a hack while prototyping, one can rely on the "current" fast-export output, even though that is not flexible or futureproof. Longer term, the folllowing sounds very interesting > Just thinking aloud, but is it possible to write a filter that converts an > arbitrary G-F-I stream with referenced blobs into a G-F-I stream without > referenced blobs by inlining all the blobs? to avoid complexity in the svn fast-import backend itself. (Complicating detail: such a filter would presumably take responsibility for --export-marks, so it might want a way to retrieve commit marks from its downstream.)