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

Re: [PATCH v2] pull: handle --log=<n>

From
Junio C Hamano <gitster@pobox.com>
Date
May 18, 2015, 18:18 UTC
Message-ID
<xmqq617pda0r.fsf@gitster.dls.corp.google.com>
In-Reply-To
<5661061272076a1883cfde1087be4a42@www.dscho.org>
Johannes Schindelin <johannes.schindelin@gmx.de> writes:
Show 26 quoted lines
> Hi Paul,
>
> On 2015-05-18 15:39, Paul Tan wrote:
>
>> diff --git a/t/t5524-pull-msg.sh b/t/t5524-pull-msg.sh
>> index 8cccecc..eebb8c9 100755
>> --- a/t/t5524-pull-msg.sh
>> +++ b/t/t5524-pull-msg.sh
>> @@ -17,6 +17,9 @@ test_expect_success setup '
>>  		git commit -m "add bfile"
>>  	) &&
>>  	test_tick && test_tick &&
>> +	echo "second" >afile &&
>> +	git add afile &&
>> +	git commit -m "second commit" &&
>>  	echo "original $dollar" >afile &&
>>  	git add afile &&
>
> I completely forgot to send a mail last time where I wanted to mention
> the test_commit function. I *think* that above invocation is
> equivalent to
>
>     test_commit "second commit" afile second
>
> with the additional benefit that `test_tick` is called
> automatically. Maybe you want to use that more concise function call?

Sounds like a good idea especially when you are testing commands that does not do things to tags implicitly.

I have been in love-hate relation with test_commit for a long time. It is very nice that it gives us ticks (i.e. reproducible object names) automatically and reduces the chance for new tests to forget to do so, but I found it extremely annoying that it wants to always add a light-weight tag to every commit it creates.

I suspect that this design decision largely comes from the fact that back then we did not exactly trust the syntax like "master~3" and wanted to have a set of fixed points, but often these auto-generated tags get in the way by either contaminating the refs namespaces (and we are testing pull here, which worries me that test authors need to be aware that these tags may be transferred to the destination) or anchoring the objects in the object database (e.g. when writing "reset --hard branch branch~3 && prune" tests, you need to remember to kill these tags).

So I dunno. I really wish test_commit didn't create tags and either left the tagging to the calling script.

Previous: Johannes SchindelinNext: Johannes Schindelin
Message 3 of 22 in “pull: handle --log=<n>”
  1. pull: handle --log=<n>Paul Tan, May 18, 2015
  2. Johannes SchindelinMay 18, 2015
  3. Junio C HamanoMay 18, 2015
  4. Johannes SchindelinMay 19, 2015
  5. Junio C HamanoMay 19, 2015
  6. Dennis KaarsemakerMay 19, 2015
  7. Stefan BellerMay 19, 2015
  8. Dennis KaarsemakerMay 19, 2015
  9. Junio C HamanoMay 19, 2015
  10. Dennis KaarsemakerMay 19, 2015
  11. Junio C HamanoMay 19, 2015
  12. Dennis KaarsemakerMay 19, 2015
  13. Junio C HamanoMay 19, 2015
  14. Junio C HamanoMay 20, 2015
  15. Dennis KaarsemakerMay 20, 2015
  16. Junio C HamanoMay 20, 2015
  17. Dennis KaarsemakerMay 20, 2015
  18. pull: handle --log=<n>Paul Tan, May 21, 2015
  19. Junio C HamanoMay 21, 2015
  20. Paul TanMay 22, 2015
  21. Paul TanMay 18, 2015
  22. Johannes SchindelinMay 18, 2015

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.