On Sun, May 8, 2011 at 01:47, Junio C Hamano <gitster@xxxxxxxxx> wrote: > + * NEEDSWORK: This creates one packfile per large blob, because the > + * caller immediately wants the result sha1, and fast-import can > + * report the object name via marks mechanism only by closing the > + * created packfile. We should instead add an internal "stuff objects > + * into a single pack, all in non-delta representation, keeping track > + * of only <object-name, offset> tuples in core" API, that keeps one > + * append-only packfile open at a time. Have the first call to this > + * function open a packfile on demand, and make sure the caller calls > + * another function in the API to close the packfile at end, at which > + * point the in-core tuples of <object-name, offset> should be written > + * out as a corresponding pack .idx file and the tentative .pack file > + * renamed to the final name. The other problem here is the caller cannot access the written objects until the pack is closed. That is one of the things that has made fast-import difficult for git-svn to use, because git-svn expects the object to be available immediately. I assume that within a single git add or git update-index process we don't need to worry about this, so its probably a non-issue. -- Shawn. -- 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