Recientemente agregué un directorio a la RUTA de Windows manualmente yendo al Panel de control -> Sistema -> Configuración avanzada del sistema -> Variables de entorno -> Variables de usuario -> RUTA. (Windows 7, 64 bits).
Después de reiniciar e iniciar cmd.exe, echo %PATH%
indica que esto funcionó: veo el directorio que agregué recientemente en la salida.
Sin embargo, después de iniciar Git Bash, la salida de echo $PATH
no incluye este directorio.
Podría agregar export PATH=$PATH:/c/my/path
mi bashrc, pero prefiero que Git Bash solo obtenga la RUTA de Windows para no tener que recordar agregar rutas a dos lugares. ¿Cómo se puede lograr esto?
(Una pregunta más general relacionada es, ¿qué configura el $ PATH de Git Bash? Veo un par de entradas repetidas en diferentes lugares, algunas cosas que están en Windows% PATH% están en el $ PATH de Git Bash pero no otras. Lo que sucede antes Recibo el mensaje de Git Bash que toca $ PATH?)
C:\cygwin\usr\x86_64-w64-mingw32\sys-root\mingw\bin
.Respuestas:
Una sesión de msysgit git bash usa el script
share/WinGit/Git Bash.vbs
, que no accede ni modifica la variable de entornoPATH
(como lo haría en este script vbs no relacionado, por ejemplo )Una sesión de git bash simplemente se agregará frente a su actual
PATH
:Es posible que la sesión de mingw empaquetada con msysgit no considere una
bin
de otra instalación de mingw: puede verificarlo configurando otro directorio (más simple) en suPATH
y ver si todavía está visible en su sesión de git bash. Si no, entonces es un problema más general que concierne a todos los directorios que agregaría a la RUTA.fuente
"c:\Program Files\Java\jdk1.8.0_25"\bin
en mi ruta de Windows se convierte/c/Program Files/Java/jdk1.8.0_25"/bi
en la ruta de git bash (nota que falta el primer y último carácter) ... así que la pregunta es, ¿cómo sucede esto?Aquí está mi pequeña solución para un problema similar (MSYS2 bash en Windows 10).
La idea es convertir las rutas requeridas en rutas de estilo Unix y agregarlas a bash $ PATH, todo hecho en .bashrc.
No agregue las rutas requeridas a Win PATH. En su lugar, cree una nueva variable de entorno en Windows, como MSYS2_WINPATH, y agregue todos los directorios de ruta de Windows separados por punto y coma a esta variable. Agregue% MSYS2_WINPATH% a% PATH%.
Ahora inserte esto en su .bashrc -
fuente
Si el valor PATH sería demasiado largo después de que la variable PATH de su usuario se haya concatenado en la variable PATH del entorno, Windows no podrá concatenar silenciosamente la variable PATH del usuario.
Esto puede suceder fácilmente después de instalar un nuevo software y agregar algo a PATH, rompiendo así el software instalado existente. Windows falla!
La mejor solución es editar una de las variables PATH en el Panel de control y eliminar las entradas que no necesita. Luego abra una nueva ventana CMD y vea si todas las entradas se muestran en "echo% PATH%".
fuente
Intente mover el directorio al comienzo de su variable de ruta. Tuve el mismo problema que tú después de instalar p4merge. El directorio de rendimiento se agregó a la ruta y cm4.exe encontró p4merge, pero no git shell (mingw). Después de una búsqueda infructuosa, intenté simplemente editar la variable para que el directorio de rendimiento apareciera primero en mi camino. Encendí git shell y, voila, el directorio está incluido en la salida de
$ echo $path
, y$ p4merge
abre p4merge.Esta es una respuesta poco convincente, ya que no tengo idea de por qué funciona, pero si la solución ayuda a alguien más, genial.
fuente