85 votes

Dans un git hook, le répertoire de travail actuel est-il garanti d’être dans le dépôt git?

Expérimentalement, il semble que git hooks s’exécutent avec le répertoire actuel défini pour être la racine du dépôt. Cependant, je ne vois aucune garantie à ce sujet dans la documentation git. Dois-je compter sur le répertoire de travail actuel pour localiser le dépôt git, ou existe-t-il un meilleur moyen de travailler sur le dépôt git associé au hook?

84voto

Ohad Schneider Points 10485

Les réponses actuelles semblent dépassées. À compter de la section 2.9.0, les documents indiquent ce qui suit :

Avant que Git n’appelle un hook, il modifie son répertoire de travail en soit la racine de l’arborescence de travail dans un référentiel non nu, ou à la $GIT_DIR dans un référentiel nu.

https://git-scm.com/docs/githooks/2.9.0

47voto

manojlds Points 96599

Il est basé sur la valeur définie pour la variable d’environnement `` . Il est défini sur la racine du référentiel lorsque le hook commence à s’exécuter. De nombreux hooks, en particulier ceux qui effectuent une extraction à partir d’un autre référentiel, décollent (et réinitialisent) cette variable d’environnement si nécessaire.

4voto

holygeek Points 6580

Vous pouvez utiliser la variable `` d’environnement . pointe vers le ```` répertoire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X