J'utilise msysgit 1.7.7.1 sur Windows. J'obtiens une erreur lors de l'utilisation git diff
. Qu'est-ce qui cause cela? N'y a-t-il pas d'outil de différence inclus dans msysgit? Que devrais-je faire?
AVERTISSEMENT: le terminal n'est pas entièrement fonctionnel
Réponses:
Pour Git Bash, cela peut être corrigé en ajoutant la ligne suivante à ~ / .bashrc:
-ou-
Le premier semble être l'original de git pour windows, le second une forme connue pour «guérir» également.
Le problème peut être causé si un autre programme (comme par exemple Strawberry Perl ) définit les
TERM
variables d'environnement système.http://code.google.com/p/msysgit/issues/detail?id=184
la source
setx TERM msys
.SETX
(par opposition à juste SET) écrit la variable env dans le registre.Si vous rencontrez des problèmes dans cmd.exe, par exemple, consultez l'avertissement ici:
Ensuite, définissez simplement vos variables d'environnement et incluez TERM = msys. Après cela, chaque fois que vous ouvrez un cmd.exe, votre variable sera définie correctement.
MAINTENANT, VOUS DEVEZ REDÉMARRER VOTRE SHELL (CMD.EXE). Il suffit d'en lancer un nouveau. Et à partir de là, vous ne devriez plus avoir de problèmes. Encore:
la source
Les réponses ci-dessus ne fonctionnaient pas entièrement pour moi, alors j'ai fait: Ajouter
à " [githome] / etc / profile " en haut mais il n'a fait des changements que pour git bash. Puis j'ai ajouté
à " [githome] /cmd/git.cmd " après @setlocal (j'ai installé uniquement git run à partir de la ligne de commande). Cette décision n'est peut-être pas vraiment bonne, mais cela fonctionne pour moi et il n'y a pas d'avertissements terminaux. (J'utilise la version 1.7.10.msysgit.1 de git).
la source
La réponse peut être trouvée ici , dans laquelle l'auteur de la solution affirme que:
c'était au lieu de
Vous pouvez changer cela en
pour résoudre le problème à résoudre.
la source
Je travaille sous PowerShell et j'ai l'exécutable git directement dans mon chemin.
Aucune des réponses suggérées n'a fonctionné, mais j'ai trouvé une solution qui fonctionne pour moi.
J'ai ajouté une ligne dans mon profil PowerShell:
Ce qui a résolu le problème pour moi.
la source
Une solution rapide et sale dans mon cas s'est avérée être d'utiliser l'
--no-pager
option.Par défaut, certaines commandes git (comme
log
) utiliseront un pager commeless
si elles s'attendent à ce que la sortie soit longue. Les téléavertisseurs nécessitent des choses comme faire défiler le texte de haut en bas avec les touches fléchées, ce qui parfois ne fonctionne pas si les hypothèses sur le type de terminal sur lequel vous vous trouvez sont fausses (c'est ce que signifie «pas entièrement fonctionnel»).Si vous savez à l'avance que votre sortie sera courte, ou si vous voulez simplement qu'elle vienne la sortie sur le terminal et laisse le défilement jusqu'à votre programme de terminal, vous pouvez remplacer cela et ne pas utiliser du tout un pager, par exemple:
la source
Au cas où quelqu'un obtiendrait cette bash de lancement depuis les extensions Git, vérifiez le paramètre pour
Path to linux tools...
. Le mien était régléC:\cygwin
. Le changer pour leC:\Program Files (x86)\Git\bin\
réparer pour moi. Je n'ai pas eu à définir la variable TERM pour lancer bash de cette façon.la source