web-dev-qa-db-fra.com

Les crochets git sont-ils poussés vers la télécommande lorsque je «git push»?

Si je crée un nouveau script de hook dans mon référentiel local dans repo/.git/hooks/post-commit et que je lance ensuite "git Push", les hooks sont-ils poussés vers la télécommande? Ensuite, lorsque les autres développeurs exécuteront "git pull" de la même origine, obtiendront-ils mes nouveaux crochets?

74
slacy

Non. Les hooks sont par référentiel et ne sont jamais poussés. De même, la configuration du dépôt n'est pas poussée non plus, ni rien dans .git/info, ou plusieurs autres choses.

Pousser et tirer uniquement échange des branches/balises et des objets de validation (et tout ce qui est accessible à partir d'une validation, par exemple des arbres, des blobs).

62
Lily Ballard

Non, les hooks git ne sont ni poussés ni tirés, car ils ne font pas partie du code du référentiel.

Veuillez vous référer à la documentation pour une liste des crochets simples côté client et côté serveur.

Si vous souhaitez activer certains hooks pour tous les clients qui clonent ou tirent d'un référentiel donné, vous devez ajouter les hooks à votre base de code, puis créer votre propre script pour les copier ou les lier à partir de repo/.git/hooks/.

41
Marco Leogrande