All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Fredrik Medley <fredrik.medley@gmail.com>
Cc: git@vger.kernel.org,
	Christian Halstrick <christian.halstrick@gmail.com>,
	Dan Johnson <computerdruid@gmail.com>, Jeff King <peff@peff.net>,
	Jonathan Nieder <jrnieder@gmail.com>,
	Duy Nguyen <pclouds@gmail.com>
Subject: Re: [PATCH] upload-pack: Optionally allow fetching reachable sha1
Date: Sun, 03 May 2015 10:40:21 -0700	[thread overview]
Message-ID: <xmqqy4l5v9tm.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <1430604075-5951-1-git-send-email-fredrik.medley@gmail.com> (Fredrik Medley's message of "Sun, 3 May 2015 00:01:15 +0200")

Fredrik Medley <fredrik.medley@gmail.com> writes:

> For you who don't remember the email discussion, look through the references.

Please don't do this.  Always describe the background yourself in
the log message so that "git log" can be read offline.  "describe
yourself" can be done by summarizing earlier discussion, borrowing
others' words, of course.  And it is a very good idea to give
references like you did after your summary to optionally allow
people to verify your summary is correct.

I do not quite understand the early part of the following:

> Since before, it is allowed to ask for a sha1, but most git servers refuse
> the request[1].

That makes it sound like "then talk to the server operator to
reconfigure and your problem is solved", no?  I do not think the
exchange [2] and [3] are about that---your wish will not be granted,
even if we extended the system to allow non-tip to be fetched, if
the server is configured not use that feature.

> This patch is based on a suggested location for
> implementation[2] which has been updated according to ideas in the reply[3].

I quite am not sure what the suggested "location" for implemenation
is.

> [1] http://thread.gmane.org/gmane.comp.version-control.git/257809
> [2] http://thread.gmane.org/gmane.comp.version-control.git/258002
> [3] http://thread.gmane.org/gmane.comp.version-control.git/258080
>
> With uploadpack.allowreachablesha1inwant configuration option set,

"option set" on the server side, I presume?

> "git fetch" can make a request with a "want" line that names an object
> that has not been advertised (likely to have been obtained out of band or
> from a submodule pointer). Only objects reachable from the branch tips,
> hidden by transfer.hiderefs or not, will be processed.

I am not sure if I am reading the last sentence correctly.  If there
are two branches, 'master' (exposed) and 'occult' (hidden),

    ---o---o---2---1---x master
        \
         o---2---1---y occult

you can ask for the 40-hex object name of occult~2, but you cannot
ask for the 40-hex object name of master~2?  Why such a restriction?

 ... wait for an answer that justfies the restriction ...

Does that justification applies for allowing occult~4 but not master~4?

> @@ -456,8 +457,11 @@ static void check_non_tip(void)
>  	char namebuf[42]; /* ^ + SHA-1 + LF */
>  	int i;
>  
> -	/* In the normal in-process case non-tip request can never happen */
> -	if (!stateless_rpc)
> +	/*
> +	 * In the normal in-process case without
> +	 * uploadpack.allowreachablesha1inwant, non-tip requests can never happen.
> +	 */

That's quite an overlong line; if you switched it to multi-line,
then fold the line once more, perhaps before "non-tip"?

> @@ -728,6 +732,7 @@ static int send_ref(const char *refname, const unsigned char *sha1, int flag, vo
>  			     sha1_to_hex(sha1), refname_nons,
>  			     0, capabilities,
>  			     allow_tip_sha1_in_want ? " allow-tip-sha1-in-want" : "",
> +			     allow_reachable_sha1_in_want ? " allow-reachable-sha1-in-want" : "",

Which printf format specifier does this new element correspond to?

  reply	other threads:[~2015-05-03 17:40 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-02 22:01 [PATCH] upload-pack: Optionally allow fetching reachable sha1 Fredrik Medley
2015-05-03 17:40 ` Junio C Hamano [this message]
2015-05-03 20:13   ` Fredrik Medley
2015-05-03 21:35     ` Eric Sunshine
2015-05-05 21:21 ` [PATCH v2] " Fredrik Medley
2015-05-05 22:16   ` Junio C Hamano
2015-05-06 20:10     ` Fredrik Medley
2015-05-06 20:19       ` Junio C Hamano
2015-05-12 21:14         ` [PATCH 1/3] config.txt: Clarify allowTipSHA1InWant with camelCase Fredrik Medley
2015-05-12 21:14           ` [PATCH 2/3] upload-pack: Prepare to extend allow-tip-sha1-in-want Fredrik Medley
2015-05-12 21:37             ` Eric Sunshine
2015-05-12 21:39             ` Junio C Hamano
2015-05-19 20:19               ` Fredrik Medley
2015-05-12 21:14           ` [PATCH 3/3] upload-pack: Optionally allow fetching reachable sha1 Fredrik Medley
2015-05-12 22:01             ` Eric Sunshine
2015-05-19 20:44               ` [PATCH 1/3] config.txt: clarify allowTipSHA1InWant with camelCase Fredrik Medley
2015-05-19 20:44                 ` [PATCH 2/3] upload-pack: prepare to extend allow-tip-sha1-in-want Fredrik Medley
2015-05-19 22:00                   ` Junio C Hamano
2015-05-20 19:31                     ` Fredrik Medley
2015-05-19 20:44                 ` [PATCH 3/3] upload-pack: optionally allow fetching reachable sha1 Fredrik Medley
2015-05-19 22:06                   ` Junio C Hamano
2015-05-21 20:23                 ` [PATCH v5 1/3] config.txt: clarify allowTipSHA1InWant with camelCase Fredrik Medley
2015-05-21 20:23                   ` [PATCH v5 2/3] upload-pack: prepare to extend allow-tip-sha1-in-want Fredrik Medley
2015-05-21 22:07                     ` Junio C Hamano
2015-05-22 23:47                       ` Fredrik Medley
2015-05-23  0:53                         ` Junio C Hamano
2015-05-21 20:23                   ` [PATCH v5 3/3] upload-pack: optionally allow fetching reachable sha1 Fredrik Medley
2015-05-21 22:15                     ` Junio C Hamano
2015-05-22 23:55                       ` Fredrik Medley
2015-05-23  1:01                         ` Junio C Hamano
2015-05-12 21:24           ` [PATCH 1/3] config.txt: Clarify allowTipSHA1InWant with camelCase Eric Sunshine
2015-05-12 21:33             ` Junio C Hamano
2015-05-12 21:35           ` Junio C Hamano
2015-05-05 22:29   ` [PATCH v2] upload-pack: Optionally allow fetching reachable sha1 Eric Sunshine

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqy4l5v9tm.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox.com \
    --cc=christian.halstrick@gmail.com \
    --cc=computerdruid@gmail.com \
    --cc=fredrik.medley@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=pclouds@gmail.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.