git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 0/3] bulk-checkin continued

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 18, 2011, 07:11 UTC
Message-ID
<1321600317-30546-1-git-send-email-gitster@pobox.com>
In-Reply-To
<1319846051-462-1-git-send-email-gitster@pobox.com>

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
Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 10 in “Bulk check-in”
  1. 0/4 Bulk check-inJunio C Hamano, Oct 28, 2011
  2. 1/4 write_pack_header(): a helper functionJunio C Hamano, Oct 28, 2011
  3. 2/4 create_tmp_packfile(): a helper functionJunio C Hamano, Oct 28, 2011
  4. 3/4 finish_tmp_packfile(): a helper functionJunio C Hamano, Oct 28, 2011
  5. 4/4 Bulk check-inJunio C Hamano, Oct 28, 2011
  6. 0/3 bulk-checkin continuedJunio C Hamano, Nov 18, 2011
  7. 1/3 csum-file: introduce sha1file_checkpointJunio C Hamano, Nov 18, 2011
  8. 2/3 bulk-checkin: do not write the same object twiceJunio C Hamano, Nov 18, 2011
  9. 3/3 bulk-checkin: do not write an object that already existsJunio C Hamano, Nov 18, 2011
  10. bulk-checkin: honor pack.packsizelimitJunio C Hamano, Nov 24, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.