[PATCH 0/9] config-based hooks restarted

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The work formerly found at
https://lore.kernel.org/git/20210527000856.695702-1-emilyshaffer@xxxxxxxxxx
has been rebased on top of
https://lore.kernel.org/git/cover-00.27-0000000000-20210617T101216Z-avarab@xxxxxxxxx
(ab/config-based-hooks-base).

Some features have been dropped from v9 of the larger config-based-hooks
series, and many patches have been replaced by Ævar's new base.

This series no longer introduces the 'hook.runHooksDir' config - I think
it is OK to introduce that later and quibble about it in isolation from
the rest of this work.

I also would encourage folks interested in reviewing this to not spend
too much time looking through it without first leaving a review on
Ævar's series which this is based on; this series won't go anywhere
without that one. :) (And yes, I owe a review on the more recent version
of that series, too.)

Note: I am worried that somewhere around patch 6 a flaky test may have
been added - I saw flaky failures on the osx-clang and linux-musl tests
when I ran CI on GitHub. I *think* this was due to missing a field when
initializing 'struct hook' for addition to the hook linked list, and I
*think* I have fixed that, but if something jumps out to anyone in the
code or in the test, I'd really appreciate the hint. A passing CI run
for the tip of this series is at
https://github.com/nasamuffin/git/actions/runs/1035559898.

 - Emily

Emily Shaffer (9):
  hook: run a list of hooks instead
  hook: allow parallel hook execution
  hook: introduce "git hook list"
  hook: treat hookdir hook specially
  hook: allow running non-native hooks
  hook: include hooks from the config
  hook: allow out-of-repo 'git hook' invocations
  hook: teach 'hookcmd' config to alias hook scripts
  hook: implement hookcmd.<name>.skip

 Documentation/config/hook.txt |  22 +++
 Documentation/git-hook.txt    |  97 ++++++++++++-
 builtin/am.c                  |  12 +-
 builtin/checkout.c            |   3 +-
 builtin/clone.c               |   3 +-
 builtin/gc.c                  |   3 +-
 builtin/hook.c                |  58 +++++++-
 builtin/merge.c               |   3 +-
 builtin/rebase.c              |   3 +-
 builtin/receive-pack.c        |  14 +-
 builtin/worktree.c            |   3 +-
 commit.c                      |   4 +-
 git.c                         |   2 +-
 hook.c                        | 251 +++++++++++++++++++++++++++++++---
 hook.h                        |  44 ++++--
 read-cache.c                  |   3 +-
 refs.c                        |   3 +-
 reset.c                       |   4 +-
 sequencer.c                   |   7 +-
 t/t1360-config-based-hooks.sh | 227 ++++++++++++++++++++++++++++++
 transport.c                   |   4 +-
 21 files changed, 711 insertions(+), 59 deletions(-)
 create mode 100644 Documentation/config/hook.txt
 create mode 100755 t/t1360-config-based-hooks.sh

-- 
2.32.0.402.g57bb445576-goog





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux