[PATCH v2 0/3] transfer.hiderefs
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 29, 2013, 00:13 UTC
- Message-ID
- <1359418412-26602-1-git-send-email-gitster@pobox.com>
So this is the second round, unifying the handling of "hidden refs" a hosting site administrator may want to handle differently from normal refs available to upload-pack and receive-pack. Big thanks to Peff for making me realize that what is shown to "git push" should match what is shown to "git fetch/clone".
The configuration variable has been changed to "transfer.hiderefs" in this round. I picked refs.[ch] as the shared location to place the machinery that deals with this configuration, but I am not proud of the choice---there may be a more suitable place.
The third patch is new; it prevents a hidden ref to be deleted or updated via "git push" to ensure that its contents are controlled only from the server side using some side channel (e.g. pull-request UI on the Web).
There is no "git fetch $there $exact_sha1_obtained_out_of_band" yet; that must come next, together with a mechanism to control the availability of it on the server side.
For those who missed it, the first round starts at
http://thread.gmane.org/gmane.comp.version-control.git/213951
Junio C Hamano (3): upload-pack: share more code upload-pack: allow hiding ref hiearchies receive-pack: reject an attempt to update/delete a hidden ref
Documentation/config.txt | 9 +++++++++ builtin/receive-pack.c | 24 +++++++++++++++++++++++ refs.c | 41 +++++++++++++++++++++++++++++++++++++++ refs.h | 3 +++ t/t5512-ls-remote.sh | 9 +++++++++ t/t5516-fetch-push.sh | 24 +++++++++++++++++++++++ upload-pack.c | 50 ++++++++++++++++++++++++++++++++---------------- 7 files changed, 144 insertions(+), 16 deletions(-)
-- 1.8.1.2.548.g0e4986f