J'ai suivi ce tutorielhttp://www.liaoxuefeng.com/wi... pour configurer le serveur. Dans la cinquième étape, j'ai désactivé la connexion shell :
Pour des raisons de sécurité, l'utilisateur git créé dans la deuxième étape n'autorise pas la connexion shell. fait en éditant /etc/ Le fichier passwd est terminé. Recherchez une ligne similaire à la suivante :
git: x :1001:1001:,,,:/home/git:/bin/bash
Changed to :
git: x :1001:1001:,,,:/home/git:/usr/bin/git-shell
De cette façon, l'utilisateur git peut utiliser git via ssh normalement, mais ne peut pas se connecter au shell car le git- nous avons spécifié pour l'utilisateur git Le shell se ferme automatiquement à chaque fois que vous vous connectez.
Alors, mon script hook peut-il toujours être exécuté ? Cela signifie-t-il que si vous le modifiez comme ça, vous ne pouvez pas l'utiliser sur le shell ?
BTW, les hooks sont-ils exécutés par les utilisateurs de git ?
Oui. Le hook n'a pas besoin de passer par le processus de connexion utilisé par les humains.
Votre configuration est effectuée par l'utilisateur git (votre adresse de connexion ssh est git@....).
Cependant, il n'est pas recommandé de le configurer de cette façon, car il n'y a aucune raison de le configurer de cette façon... Si vous souhaitez le configurer vous-même, si vous l'utilisez seul, utilisez simplement votre propre compte sur le serveur. Si plusieurs personnes l'utilisent, utilisez simplement gitolite.