From: "Nguyễn Thái Ngọc Duy" <pclouds@xxxxxxxxx>
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.
Philip
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/t5530-upload-pack-error.sh | 3 -
t/t5536-fetch-shallow.sh (new +x) | 141
++++++++++++++++++++++++
t/t5537-push-shallow.sh (new +x) | 176
++++++++++++++++++++++++++++++
t/t5601-clone.sh | 7 ++
transport.c | 14 ++-
upload-pack.c | 132 ++++++----------------
28 files changed, 858 insertions(+), 207 deletions(-)
create mode 100755 t/t5536-fetch-shallow.sh
create mode 100755 t/t5537-push-shallow.sh
--
1.8.2.83.gc99314b
--
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
-----
No virus found in this message.
Checked by AVG - www.avg.com
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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html