This updates the earlier bulk-checkin series ($gmane/184440) to further enhance the "large file" topic from 1.7.6 cycle. The first one adds two API functions to allow truncating a checksummed file that is being written. This is the same patch as the one I sent earlier today. The second one prevents the bulk-checkin code from writing the same object twice to the stream, and the third one further makes it notice that the object it has just written already exists in the repository. In either case, the packfile is rewound using the new sha1file_checkpoint/truncate API, and the packfile itself is removed if truncation results in an empty output. The next step is to add the "split-blob" entry in the packfile, but that is a much larger task and will take longer. Junio C Hamano (3): csum-file: introduce sha1file_checkpoint bulk-checkin: do not write the same object twice bulk-checkin: do not write an object that already exists bulk-checkin.c | 40 +++++++++++++++++++++++++++++++++++----- csum-file.c | 20 ++++++++++++++++++++ csum-file.h | 9 +++++++++ fast-import.c | 25 ++++++++----------------- t/t1050-large.sh | 38 ++++++++++++++++++++++++++++++-------- 5 files changed, 102 insertions(+), 30 deletions(-) -- 1.7.8.rc3.111.g7d421 -- 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