From: "Nguyễn Thái Ngọc Duy" <>
Subject: [PATCH v2 00/16] First class shallow clone

It's nice to see that shallow can be a first class clone.

Thinking outside the box, does this infrastructure offer the opportunity to maybe add a date based depth option that would establish the shallow watermark based on date rather than count. (e.g. the "deepen" SP depth could have an alternate with a leading 'T' to indicate a time limit ratherv than revision count - I'm expecting such a format would be an error for existing servers).

My other thought was this style of cut limit list may also allow a big file limit to do a similar process of listing objects (e.g. blobs) that are size-shallow in the repo, though it maybe a long list on some repos, or with a small size limit.


v2 includes:

- fix Junio comments, especially the one that may lead to incomplete
  commit islands.
- fix send-pack setting up temporary shallow file, but never passes
  it to index-pack/unpack-objects (also fix the tests to catch this)
- support smart http
- add core.noshallow for repos that wish to be always complete
- fix locally cloning a shallow repository
- make upload-pack pass --shallow-file to pack-objects in order to
  remove duplicate object counting code just for shallow case.

Nguyễn Thái Ngọc Duy (16):
 send-pack: forbid pushing from a shallow repository
 {receive,upload}-pack: advertise shallow graft information
 connect.c: teach get_remote_heads to parse "shallow" lines
 Move setup_alternate_shallow and write_shallow_commits to shallow.c
 fetch-pack: support fetching from a shallow repository
 {send,receive}-pack: support pushing from a shallow clone
 send-pack: support pushing to a shallow clone
 upload-pack: let pack-objects do the object counting in shallow case
 pack-protocol.txt: a bit about smart http
 Add document for command arguments for supporting smart http
{fetch,upload}-pack: support fetching from a shallow clone via smart http
 receive-pack: support pushing to a shallow clone via http
 send-pack: support pushing from a shallow clone via http
 git-clone.txt: remove shallow clone limitations
config: add core.noshallow to prevent turning a repo into a shallow one
 clone: use git protocol for cloning shallow repo locally

Documentation/config.txt                  |   5 +
Documentation/git-clone.txt               |   7 +-
Documentation/git-fetch-pack.txt          |  11 +-
Documentation/git-receive-pack.txt        |  16 ++-
Documentation/git-send-pack.txt           |   9 +-
Documentation/git-upload-pack.txt         |  13 ++-
Documentation/technical/pack-protocol.txt |  76 ++++++++++++-
builtin/clone.c                           |  14 ++-
builtin/fetch-pack.c                      |   6 +-
builtin/receive-pack.c                    |  76 +++++++++++--
builtin/send-pack.c                       |   7 +-
cache.h                                   |   4 +-
commit.h                                  |  27 +++++
config.c                                  |   5 +
connect.c                                 |  12 +-
environment.c                             |   1 +
fetch-pack.c                              |  90 ++++++---------
fetch-pack.h                              |   1 +
remote-curl.c                             |   4 +-
send-pack.c                               |  57 +++++++++-
send-pack.h                               |   4 +-
shallow.c | 147 +++++++++++++++++++++++++
t/              |   3 -
t/ (new +x) | 141 ++++++++++++++++++++++++ t/ (new +x) | 176 ++++++++++++++++++++++++++++++
t/                          |   7 ++
transport.c                               |  14 ++-
upload-pack.c                             | 132 ++++++----------------
28 files changed, 858 insertions(+), 207 deletions(-)
create mode 100755 t/
create mode 100755 t/


To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

No virus found in this message.
Checked by AVG -
Version: 2013.0.3349 / Virus Database: 3204/6504 - Release Date: 07/19/13

To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to