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

What about allowing multiple hooks?

From
MWMarc Weber <marco-oweber@gmx.de>
Date
Nov 21, 2008, 13:38 UTC
Message-ID
<20081121133828.GB5912@gmx.de>
Use case:

I've been reading parts of the topGit code. And it does make for it to add its own checks. However having to change the existing scripts insterting a call to the tg hooks isn't the best way. Why? one is using #/bin/sh the next is using #/bin/ruby maybe..

So what about allowing (or even enforcing) ths directory layout?

.git/hooks/pre-commit/hook1.sh .git/hooks/pre-commit/hook2.sh .git/hooks/pre-commit/topGitcheck.sh

instead of .git/hooks/pre-commit # <- the one and only pre-commit hook

so that all can be run in squence?

This way you can keep the original git sample files and update them while adding you very own checks more easily.

But maybe this isn't the best choice either and the way to go is
.git/hooks/list-of-hook-directories # eg containing ".git/hooks/samples\n.git/hooks/topgit" ?

.git/hooks/sample/<all the sample hook files> .git/hooks/topgit/pro-commit

?

Then you can actually link in your own personal check script directories easily *and* you can add them to the repository eg by using comitted-repo-hooks instead of .git/hooks ? This way you could provide different hook directories for different platforms and all you have to do is enabling them by adding the path to .git/list-of-hook-directories ?

I guess the second approach of defining kind of overlays is better because it doesn't interfer with the existiing scheme? Maybe it should be implemented as git config option instead of a file containing the list of directories?

The hook direcotry list apporach is better because you've more control about order of execution..

Thoughts?
Marc Weber
Next: martin f krafft
Message 1 of 10 in “What about allowing multiple hooks?”
  1. Marc WeberNov 21, 2008
  2. martin f krafftNov 21, 2008
  3. Rogan DawesNov 21, 2008
  4. Alexander PotashevJan 3, 2009
  5. Junio C HamanoJan 4, 2009
  6. Anders WaldenborgJan 21, 2009
  7. Johannes SchindelinJan 21, 2009
  8. Anders WaldenborgJan 21, 2009
  9. Johannes SchindelinJan 21, 2009
  10. Anders WaldenborgJan 22, 2009

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.