30 votes

git commit-a confusion

Je suis à l'aide de Git Bash et je suis à essayer de comprendre ce qui se passe quand je tape 'git commit -a".

Ressemble VIM s'ouvre à éditer mon message de commit, mais comment puis-je enregistrer et terminer ce commit? Je tape dans l'éditeur et cliquez sur entrer, mais il vient de crée une autre ligne.

Pour info: je suis à l'aide de VM Fusion sur mon mac, pour certains de mes clés pourrait être un peu différent

42voto

knittl Points 64110

c'est une question à propos de VIM et de ne pas git lui-même (si je ne me trompe pas)

VIM utilise plusieurs modes, pour quitter le mode insertion, appuyez sur ÉCHAP ou ^C. pour enregistrer et quitter le fichier ZZ, :x ou :wq

juste pour être complet: git commit -a allons d'abord ajouter toutes les marques et changé le contenu des fichiers de l'index, puis crée un commit (après spécifiant le message de commit à l'intérieur de vim ou votre éditeur de choix)

26voto

Crozin Points 22346

Il suffit de laisser VIM (mode de commande -> :wq).

-a indicateur fonctionne comme:

git add -u
git commit ...

-m indicateur spécifie le message de validation. Ce message est obligatoire donc, si vous ne passez pas qu' (git commit -m "My message") l'éditeur de texte par défaut s'ouvre (vous pouvez le changer dans la configuration git) et vous aurez à écrire un message de commit, puis sauvegardez et quittez l'éditeur.

14voto

Andrew Myers Points 5403

Pour enregistrer votre livraison vous enregistrez et fermez le fichier comme vous le feriez normalement dans vim.

:wq

Si vous changez d'avis et souhaitez annuler vous quitter sans enregistrer.

:q!

Vous n'avez pas à utiliser VIM, vous pouvez définir l'éditeur, par exemple de modifier l'éditeur git utilise pour textmate.

git config --global core.l'éditeur de textmate

3voto

Herbert Sitz Points 10657

Comme d'autres l'ont dit, Vim est ouvert si vous ajoutez un message avec des informations sur les modifications que vous avez commis. Il semble que l'éditeur par défaut sur votre système est Vim. Git est installé de sorte qu'il comprendra le message que l'on et l'enregistrer dans Vim, après la fermeture de Vim avec :wq, :x, ou d'une autre commande.

En plus de la méthode Andrew Myers suggère de changer l'éditeur d'être appelé par Git, vous pouvez inclure un message simple sur la ligne de commande avec quelque chose comme ceci:

git commit -am 'This is my message for the commit. . . '

Si vous le faites de cette façon, Git ne vous dérange pas par l'ouverture d'un éditeur de texte à tous.

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