git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 1/6] transport-helper: clarify *:* refspec

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 18, 2013, 19:07 UTC
Message-ID
<CAMP44s1NRMbk2DpgyWqnyEKV+WkxAg1Gjn3UZQKMopJUDBZ4jw@mail.gmail.com>
In-Reply-To
<7vhaj37nr5.fsf@alter.siamese.dyndns.org>
On Thu, Apr 18, 2013 at 12:27 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 18 quoted lines
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
>> The *:* refspec doesn't work, and never has, clarify the code and
>> documentation to reflect that. This in effect reverts commit 9e7673e
>> (gitremote-helpers(1): clarify refspec behaviour).
>> ...
>>  applicable refspec takes precedence.  The left-hand of refspecs
>>  advertised with this capability must cover all refs reported by
>> -the list command.  If a helper does not need a specific 'refspec'
>> -capability then it should advertise `refspec *:*`.
>> +the list command.  If no 'refspec' capability is advertised,
>> +there is an implied `refspec *:*`.
>
> I presume
>
>     s/.$/, but `*:*` does not work so do not use it./
>
> is implied?
I believe
  s/.$/, but you should specify an apropriate one as described above./
Would be better.
Show 24 quoted lines
>> diff --git a/t/t5801-remote-helpers.sh b/t/t5801-remote-helpers.sh
>> index f387027..cd1873c 100755
>> --- a/t/t5801-remote-helpers.sh
>> +++ b/t/t5801-remote-helpers.sh
>> @@ -120,21 +120,6 @@ test_expect_failure 'pushing without refspecs' '
>>       compare_refs local2 HEAD server HEAD
>>  '
>>
>> -test_expect_success 'pulling with straight refspec' '
>> -     (cd local2 &&
>> -     GIT_REMOTE_TESTGIT_REFSPEC="*:*" git pull) &&
>> -     compare_refs local2 HEAD server HEAD
>> -'
>
> This one made me raise my eyebrows, first.
>
> The only reason this test "passes" is because this particular
> "pull", due to what local2 and server happens to have before this
> test runs, is an "Already up-to-date" and a no-op.  You are removing
> this because it is not really testing anything useful, and if you
> change it to test something real, e.g. by rewinding local2, it will
> reveal the breakage.
>
> Am I reading you correctly?

Not really. This particular fetch does work, and it's tricky to explain all the reasons why, even if you update the server ref before fetching. The reason it's written this way is that it comes from from a branch of mine that has a hack to make the push above works, and since the transport-helper's push doesn't update the ref in this version, the test did actually do something and was working.

I am removing the test because we don't care if it works or not, remote-helpers should not be doing that. The fact that the test wasn't actually doing anything is icing on the cake.

Cheers.
-- 
Felipe Contreras
Previous: Junio C HamanoNext: Felipe Contreras
Message 9 of 26 in “transport-helper: some clarifications and a fix”
  1. 0/6 transport-helper: some clarifications and a fixFelipe Contreras, Apr 18, 2013
  2. 1/6 transport-helper: clarify *:* refspecFelipe Contreras, Apr 18, 2013
  3. John KeepingApr 18, 2013
  4. Felipe ContrerasApr 18, 2013
  5. John KeepingApr 18, 2013
  6. Felipe ContrerasApr 18, 2013
  7. John KeepingApr 18, 2013
  8. Junio C HamanoApr 18, 2013
  9. Felipe ContrerasApr 18, 2013
  10. 2/6 transport-helper: update refspec documentationFelipe Contreras, Apr 18, 2013
  11. 3/6 transport-helper: clarify pushing without refspecsFelipe Contreras, Apr 18, 2013
  12. John KeepingApr 18, 2013
  13. Felipe ContrerasApr 18, 2013
  14. John KeepingApr 18, 2013
  15. Junio C HamanoApr 18, 2013
  16. John KeepingApr 18, 2013
  17. Junio C HamanoApr 18, 2013
  18. Eric SunshineApr 19, 2013
  19. Felipe ContrerasApr 19, 2013
  20. Junio C HamanoApr 19, 2013
  21. 4/6 transport-helper: warn when refspec is not usedFelipe Contreras, Apr 18, 2013
  22. Junio C HamanoApr 18, 2013
  23. Felipe ContrerasApr 18, 2013
  24. 5/6 transport-helper: trivial code shuffleFelipe Contreras, Apr 18, 2013
  25. 6/6 transport-helper: update remote helper namespaceFelipe Contreras, Apr 18, 2013
  26. Junio C HamanoApr 18, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.