J'utilise Git dans Cygwin 64 sous Windows. L'éditeur par défaut vi et git utilise l'éditeur par défaut. Lorsque j'appelle 'git commit', les messages suivants sont affichés avant le démarrage de vim:
git commit
Vim warning: output is not to a terminal
Vim warning: input is not from a terminal
Après cela, vi commencera mais ne pourra pas être contrôlé, 'ESC', ':' ne pourra plus être utilisé et je devrai tuer la fenêtre de cygwin.
Comment puis-je utiliser vim pour le "git commit"?
Cela pourrait être causé par menthe, voir ce numéro .
Il y a deux façons de réparer:
Utilisez bash.exe à la place de menthe:
Faites un clic droit sur le raccourci de cygwin, changez-le de C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -
à C:\cygwin64\bin\bash.exe --login -i
Ajoutez le bon chemin vim à git config:
git config --global core.editor "C:/cygwin64/bin/vim.exe"
Notez que n'utilisez pas cygdrive
dans le chemin car .gitconfig
ne peut pas le reconnaître. Et si vous utilisez vim 32 bits, le chemin doit être C:/cygwin/bin/
Vous pouvez avoir installé Git pour Windows (msysgit) ou Vim pour Windows. Dès qu'ils sont livrés, ils ne sont pas compatibles avec Cygwin64 - vous devez configurer votre chemin d'accès pour que Cygwin ignore ces installations.
L'option la plus simple serait de désinstaller ces deux éléments et d'utiliser simplement la version Cygwin.
Si vous devez les conserver pour une raison quelconque, définissez votre variable $PATH
dans votre .bash_profile
en tant que substitution. Utilisez votre $ PATH existant, moins les chemins msysgit et windows vim. Si vous êtes intéressé par le script bash, vous pouvez essayer ce qui suit pour supprimer les chemins lorsque vous utilisez bash, modifié en fonction de votre situation particulière:
msysgit='/cygdrive/c/Program Files/git:'
PATH="${msysgit//$PATH/}"
msysvim='/cygdrive/c/Program Files (x86)/vim/vim74:'
PATH="${mysysvim//$PATH/}"
Bonne chance!
Vous avez installé la version Windows de GIT plutôt que la version CYGWIN de GIT. GIT par défaut est fourni avec un ensemble complet d'outils UNIX, y compris sa propre version de VI. Malheureusement, cette version de VI ne joue pas à Nice avec CYGWIN. La meilleure solution consiste à installer GIT dans CYGWIN afin d’utiliser la version CYGWIN de VI ou VIM.
J'ai fait face au même problème. @ CYB.tachyon et @David Beckman ont tous deux expliqué POURQUOI vim id break; mais, plutôt que de désinstaller quoi que ce soit, j'ai exécuté ma commande git à partir d'une invite de commande de style DOS, et tout s'est bien passé. Je suppose que, finalement, nettoyer les différentes saveurs de vim sera MA solution ultime, mais si vous souhaitez simplement poursuivre votre travail, c’était la solution la plus rapide au problème immédiat.