[PATCH v3 00/11] Large blob fixes
From: Nguyễn Thái Ngọc Duy <hidden>
Date: 2016-06-15 22:53:13
Changes from v2:
- set core.bigfilethreshold globally in t1050 to make git-clone happy
because there's currently no way to specify this in git-clone (or
is there?)
- fix the bad coding taste in builtin/cat-file.c
- make update-server-info respect core.bigfilethreshold,
which makes repack pass on repositories that have tags
Junio C Hamano (1):
streaming: make streaming-write-entry to be more reusable
Nguyễn Thái Ngọc Duy (10):
Add more large blob test cases
cat-file: use streaming interface to print blobs
parse_object: special code path for blobs to avoid putting whole
object in memory
show: use streaming interface for showing blobs
index-pack: split second pass obj handling into own function
index-pack: reduce memory usage when the pack has large blobs
pack-check: do not unpack blobs
archive: support streaming large files to a tar archive
fsck: use streaming interface for writing lost-found blobs
update-server-info: respect core.bigfilethreshold
archive-tar.c | 35 ++++++++++++---
archive-zip.c | 9 ++--
archive.c | 51 +++++++++++++++-------
archive.h | 11 ++++-
builtin/cat-file.c | 24 +++++++++++
builtin/fsck.c | 8 +---
builtin/index-pack.c | 95 ++++++++++++++++++++++++++++++-----------
builtin/log.c | 34 +++++++++------
builtin/update-server-info.c | 1 +
cache.h | 2 +-
entry.c | 53 ++---------------------
fast-import.c | 2 +-
object.c | 11 +++++
pack-check.c | 21 +++++++++-
sha1_file.c | 78 +++++++++++++++++++++++++++++-----
streaming.c | 55 ++++++++++++++++++++++++
streaming.h | 2 +
t/t1050-large.sh | 63 +++++++++++++++++++++++++++-
wrapper.c | 27 +++++++++++-
19 files changed, 439 insertions(+), 143 deletions(-)
--
1.7.3.1.256.g2539c.dirty