2 votes

Comment automatiser les tâches git qui nécessitent un message commit ?

J'écris un script pour automatiser une tâche Git. En faisant cela manuellement, il y a quelques points où git ouvre vim pour éditer un message script, et je dois taper :wq . Existe-t-il un moyen de pré-renvoyer ces frappes à partir de mon script, mais seulement si vim s'ouvre ? Alternativement, y a-t-il un moyen d'éviter d'ouvrir vim en premier lieu ?

J'utilise tcsh.

3voto

8bittree Points 2817

Vous pourriez simplement éviter d'ouvrir Vim en premier lieu.

Une option pour cela est de faire usage de la fonction --message=<message> (o -m <message> en abrégé) l'option de git subtree pull . L'inconvénient est que vous ne pouvez pas utiliser le message par défaut fourni par git et que vous devez créer le vôtre. Le bon côté est que cela devrait fonctionner à peu près partout où git a besoin d'un message commit.

Une autre option qui fait utiliser le message par défaut est de changer l'"éditeur" que git ouvre pour cat. N'oubliez pas de le changer à nouveau immédiatement après :

git config --local core.editor /path/to/cat
git subtree pull --prefix foo/bar/path repo branch --squash
git config --local core.editor /path/to/vim-or-other-editor

Le bon côté de la chose est que vous pouvez utiliser le message par défaut fourni par git. L'inconvénient est que cela ne fonctionnera pas si le message par défaut commit est vide, comme c'est le cas lorsqu'on fait un simple git commit .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X