Subject: Re: Can I fetch an arbitrary commit by sha1?

From: Junio C Hamano <[email-masked]>
Date: Tue, 07 Oct 2014 09:52:33 -0700

Duy Nguyen <[email-masked]> writes:

> Hmm.. Junio already did most of the work in 051e400 (helping
> smart-http/stateless-rpc fetch race - 2011-08-05), so all we need to
> do is enable uploadpack.allowtipsha1inwant and apply this patch

Not that patch, I would think.

I would understand "if !stateless_rpc and !allowtipsha1 then it is
an error", though.

> -- 8< --
> diff --git a/upload-pack.c b/upload-pack.c
> index c789ec0..493f8ee 100644
> --- a/upload-pack.c
> +++ b/upload-pack.c
> @@ -454,10 +454,6 @@ 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)
> -		goto error;
> -
>  	cmd.argv = argv;
>  	cmd.git_cmd = 1;
>  	cmd.no_stderr = 1;
> -- 8< --
>
> If we already let smart-http do this, I don't see any harm in letting
> git protocol do the same (even though it's the the original reason why
> this code exists).
> --
> Duy