The third round.
- Multi-valued variable transfer.hiderefs lists prefixes of ref
hierarchies to be hidden from the requests coming over the
network.
- A configuration optionally allows uploadpack to accept fetch
requests for an object at the tip of a hidden ref.
Elsewhere, we discussed "delaying ref advertisement" (aka "expand
refs"), but it is an orthogonal feature and this "hiding refs
completely from advertisement" series does not attempt to address.
Patch #2 (simplify request validation), #4 (clarify the codeflow),
and #5 (use struct ref) are new. The are all long overdue clean-ups
for these codepaths.
The last patch is an illustration why it wouldn't make sense to
optionally allow pushing into hidden refs, and not meant to be part
of the series proper.
For those who missed it, earlier rounds are at:
http://thread.gmane.org/gmane.comp.version-control.git/213951
http://thread.gmane.org/gmane.comp.version-control.git/214888
Junio C Hamano (8):
upload-pack: share more code
upload-pack: simplify request validation
upload/receive-pack: allow hiding ref hierarchies
parse_fetch_refspec(): clarify the codeflow a bit
fetch: use struct ref to represent refs to be fetched
upload-pack: optionally allow fetching from the tips of hidden refs
fetch: fetch objects by their exact SHA-1 object names
WIP: receive.allowupdatestohidden
Documentation/config.txt | 23 +++++++++++
builtin/fetch-pack.c | 40 +++++++++++++++----
builtin/receive-pack.c | 31 +++++++++++++++
cache.h | 3 +-
fetch-pack.c | 101 ++++++++++++++++++++++++++++++++---------------
fetch-pack.h | 11 +++---
refs.c | 41 +++++++++++++++++++
refs.h | 3 ++
remote.c | 41 ++++++++++---------
remote.h | 1 +
t/t5512-ls-remote.sh | 9 +++++
t/t5516-fetch-push.sh | 82 ++++++++++++++++++++++++++++++++++++++
transport.c | 9 +----
upload-pack.c | 86 ++++++++++++++++++++++++----------------
14 files changed, 374 insertions(+), 107 deletions(-)
--
1.8.1.2.589.ga9b91ac
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html