Estoy usando msysgit 1.7.7.1 en Windows. Recibo un error al usar git diff
. ¿Qué está causando esto? ¿No se incluye ninguna herramienta de diferencias en msysgit? ¿Qué tengo que hacer?
ADVERTENCIA: el terminal no es completamente funcional
Estoy usando msysgit 1.7.7.1 en Windows. Recibo un error al usar git diff
. ¿Qué está causando esto? ¿No se incluye ninguna herramienta de diferencias en msysgit? ¿Qué tengo que hacer?
ADVERTENCIA: el terminal no es completamente funcional
Respuestas:
Para Git Bash, esto se puede solucionar agregando la siguiente línea a ~ / .bashrc:
export TERM=cygwin
-o-
export TERM=msys
El primero parece ser el original de git para windows, el segundo es una forma popular conocida de "curar" también.
El problema puede deberse a que algún otro programa (como por ejemplo Strawberry Perl ) establece las TERM
variables de entorno del sistema.
setx TERM msys
. SETX
(a diferencia de SET) escribe la variable env en el registro.
Si tiene problemas con cmd.exe, por ejemplo, consulte la advertencia aquí:
Luego, simplemente configure sus variables de entorno e incluya TERM = msys. Después de eso, cada vez que abra un cmd.exe, su variable se configurará correctamente.
AHORA DEBE REINICIAR SU SHELL (CMD.EXE). Ejecute uno nuevo. Y a partir de ahí, no debería tener más problemas. De nuevo:
Las respuestas anteriores no me funcionaron completamente, así que lo hice: Agregar
export TERM=msys
a " [githome] / etc / profile " en la parte superior, pero solo hizo cambios para git bash. Entonces agregué
@set TERM=msys
a " [githome] /cmd/git.cmd " después de @setlocal (instalé solo git run desde la línea de comando). Puede que esta decisión no sea realmente buena, pero funciona para mí y no hay advertencias de terminal. (Yo uso la versión 1.7.10.msysgit.1 de git).
La respuesta se puede encontrar aquí , en la que el autor de la solución afirma que:
la variable de entorno
TERM
se estableció endumb
eso fue en lugar de
TERM=cygwin
Puedes cambiar eso a
TERM=msys
para resolver el problema en cuestión.
Trabajo en powershell y tengo el ejecutable git directamente en mi camino.
Ninguna de las respuestas sugeridas funcionó, pero encontré una solución que funciona para mí.
Agregué una línea en mi perfil de powershell:
$env:TERM="msys"
Lo que me solucionó el problema.
Una solución rápida y sucia en mi caso resultó ser usar la --no-pager
opción.
De forma predeterminada, algunos comandos de git (como log
) usarán un paginador como less
si esperan que la salida sea larga. Los buscapersonas requieren cosas como desplazar el texto hacia arriba y hacia abajo con las teclas de flecha, lo que a veces no funciona si las suposiciones sobre el tipo de terminal en el que se encuentra son incorrectas (esto es lo que significa "no completamente funcional").
Si sabe de antemano que su salida será corta, o simplemente quiere que descargue la salida en la terminal y deje el desplazamiento hasta su programa de terminal, puede anular esto y no usar un buscapersonas, por ejemplo:
git --no-pager log
En caso de que alguien obtenga este bash de lanzamiento desde Git Extensions, verifique la configuración Path to linux tools...
. El mío estaba configurado para C:\cygwin
. Cambiarlo para C:\Program Files (x86)\Git\bin\
arreglarlo para mí. No tuve que configurar la variable TERM para iniciar bash de esta manera.