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

Re: [PATCH v3] bugreport: collect list of populated hooks

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 30, 2020, 22:09 UTC
Message-ID
<xmqqwo5wpqvg.fsf@gitster.c.googlers.com>
In-Reply-To
<xmqqv9lgswar.fsf@gitster.c.googlers.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 17 quoted lines
>> When we do that, this "mkdir .git/hooks" will fail because the
>> directory already exists.  Ideas:
>>
>>  A. Include a preparatory patch in this series that removes that "mv"
>>     command.  That way, this test can do
>
> While I do not think it is realistic to anticipate that the "test"
> repository may someday come with a hooks/ directory, even if we did
> so, we would not enable any hook by default in there.  So "move away
> and restore" feels way overkill.
>
>>   B. Run "git init" ourselves so we know what we're getting:
>
> That is certainly safer, and simpler.  But perhaps the simplest
> would be
>
>     C. Use "mkdir -p .git/hooks" so we won't get affected.

In the meantime, I added this SQUASH on top. I do not claim that this is the best solution, but the idea is to refuse to be affected by what is left in .git/hooks either by the test framework or earlier tests in the same test script file.

 t/t0091-bugreport.sh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/t/t0091-bugreport.sh b/t/t0091-bugreport.sh
index 612c12a918..9450cc02e3 100755
--- a/t/t0091-bugreport.sh
+++ b/t/t0091-bugreport.sh
@@ -58,11 +58,14 @@ test_expect_success 'can create leading directories outside of a git dir' '
 '
 
 test_expect_success 'indicates populated hooks' '
-	test_when_finished rm git-bugreport-hooks.txt &&
-	test_when_finished rm -fr .git/hooks &&
+	rm -fr .git/hooks &&
 	mkdir .git/hooks &&
-	write_script .git/hooks/applypatch-msg &&
-	write_script .git/hooks/prepare-commit-msg.sample &&
+	for hook in applypatch-msg prepare-commit-msg.sample
+	do
+		write_script ".git/hooks/$hook" <<-\EOF || return 1
+		echo "hook $hook exists"
+		EOF
+	done &&
 	git bugreport -s hooks &&
 	grep applypatch-msg git-bugreport-hooks.txt &&
 	! grep prepare-commit-msg git-bugreport-hooks.txt
-- 
2.26.2-447-gd61d20c9b4
Previous: Junio C HamanoNext: Emily Shaffer
Message 23 of 33 in “bugreport: collect list of populated hooks”
  1. bugreport: collect list of populated hooksEmily Shaffer, Apr 24, 2020
  2. Jonathan NiederApr 25, 2020
  3. bugreport: drop time.h includeEmily Shaffer, Apr 27, 2020
  4. Jonathan NiederApr 27, 2020
  5. Junio C HamanoApr 27, 2020
  6. Junio C HamanoApr 27, 2020
  7. Emily ShafferApr 27, 2020
  8. Junio C HamanoApr 27, 2020
  9. bugreport: drop extraneous includesEmily Shaffer, Apr 27, 2020
  10. Jonathan NiederApr 27, 2020
  11. Junio C HamanoApr 25, 2020
  12. Emily ShafferApr 27, 2020
  13. Junio C HamanoApr 27, 2020
  14. Emily ShafferApr 27, 2020
  15. bugreport: collect list of populated hooksEmily Shaffer, Apr 27, 2020
  16. Jonathan NiederApr 27, 2020
  17. Junio C HamanoApr 28, 2020
  18. Emily ShafferApr 30, 2020
  19. bugreport: collect list of populated hooksEmily Shaffer, Apr 30, 2020
  20. Jonathan NiederApr 30, 2020
  21. Jonathan NiederApr 30, 2020
  22. Junio C HamanoApr 30, 2020
  23. Junio C HamanoApr 30, 2020
  24. Emily ShafferMay 7, 2020
  25. Junio C HamanoMay 7, 2020
  26. Emily ShafferMay 11, 2020
  27. bugreport: collect list of populated hooksEmily Shaffer, May 8, 2020
  28. Junio C HamanoMay 8, 2020
  29. Đoàn Trần Công DanhMay 8, 2020
  30. Emily ShafferMay 11, 2020
  31. bugreport: collect list of populated hooksEmily Shaffer, May 11, 2020
  32. Jonathan NiederMay 11, 2020
  33. Junio C HamanoMay 11, 2020

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.