Je crée un hook de mise à jour pour que notre référentiel git central puisse effectuer des vérifications simples de chaque fichier dans chaque commit. Cependant, je ne sais pas comment faire en sorte que tous les noms de tous les commits soient "poussés".git update hook: Recherche de tous les revs en cours
Peu importe le nombre de validations que le client effectue, le hook de mise à jour est appelé une seule fois (par conception). Par exemple, supposons que la tête est e2706ec, et je crée deux commits:
$ echo 'date' >>foo && git commit -am'Touched foo'
[master e5c9682] Touched foo
1 files changed, 1 insertions(+), 0 deletions(-)
$ echo 'date' >>bar && git commit -am'Touched bar'
[master bdc1fd1] Touched bar
1 files changed, 1 insertions(+), 0 deletions(-)
Alors je pousse le code au référentiel central:
$ git push
Le script .git/hooks/mise à jour est appelée une fois avec ces arguments:
- refs/heads/master
- e2706ec31e51b9bbd4010e79fd7186089c59690e
- bdc1fd17e8209bbb987b5358a0b49b20d9589103
Git passe au crochet de mise à jour du ref_name, old_rev et new_rev. Ce qu'il ne passe pas, ce sont les noms de tous les tours entre old_rev et new_rev (dans ce cas, e5c9682). Etant donné old_rev et new_rev, quel est le sort git pour obtenir chaque rev que le client essaie de pousser?
Oui, cela est exact. http://progit.org/book/ch7-4.html donne quelques exemples plus concrets. – swampsjohn
C'est ce qu'il a fait. Merci! –