web-dev-qa-db-fra.com

Git hooks: application de `git config core.hooksPath`

J'ai un référentiel git avec un hook de pré-validation configuré:

my-repo
|- .git
   |- hooks
      |- pre-commit     # I made this file executable

Jusque-là, tout fonctionne. Le crochet est en cours d'exécution lorsque je valide.

=================================

Je lance maintenant git config core.hooksPath ./git-config/hooks dans my-repo.

La structure des dossiers est celle-ci:

my-repo
|- .git
   |- hooks
|- git-config
   |- hooks
      |- pre-commit     # I made this file executable as well

Ce qui se produit est :

  • le nouveau script de pré-validation ne s'exécute pas sur la validation
  • l'ancien script de pré-validation s'exécute toujours sur commit si je le laisse dans my-repo/.git/hooks
  • fonctionnement git config --get core.hooksPath dans my-repo les sorties ./git-config/hooks

Comment puis-je exécuter le nouveau hook de pré-validation lors de la validation?

Voici le lien vers les documents que je ne comprends apparemment pas bien:
https://git-scm.com/docs/git-config
https://git-scm.com/docs/githooks

12
Nicolas Marshall

Le core.hooksPath le support est nouveau dans la version 2.9 de Git , ayant été ajouté avec commit 867ad08a2610526edb5723804723d371136fc643 . Si votre version de Git n'est pas au moins 2.9.0, la définition d'une variable hooks-path n'aura aucun effet.

18
torek