Saya baru-baru ini menambahkan direktori ke PATH Windows secara manual dengan masuk ke Control Panel -> System -> Pengaturan sistem lanjutan -> Variabel Lingkungan -> Variabel pengguna -> PATH. (Windows 7, 64-bit.)
Setelah mem-boot ulang dan memulai cmd.exe, echo %PATH%
menunjukkan bahwa ini berhasil: Saya melihat direktori yang baru saja saya tambahkan di output.
Namun, setelah memulai Git Bash, output dari echo $PATH
tidak termasuk direktori ini.
Saya bisa menambahkan export PATH=$PATH:/c/my/path
di bashrc saya tapi saya lebih suka Git Bash hanya mendapatkan PATH dari Windows jadi saya tidak harus ingat untuk menambahkan path ke dua tempat. Bagaimana ini bisa dicapai?
(Pertanyaan terkait yang lebih umum adalah, apa yang membuat $ PATH Git Bash? Saya melihat beberapa entri diulang di tempat yang berbeda, beberapa hal yang ada di Windows% PATH% ada di $ PATH Git Bash tetapi tidak pada yang lain. Apa yang terjadi sebelumnya Saya mendapatkan prompt Git Bash yang menyentuh $ PATH?)
C:\cygwin\usr\x86_64-w64-mingw32\sys-root\mingw\bin
.Jawaban:
Sesi msysgit git bash menggunakan skrip
share/WinGit/Git Bash.vbs
, yang tidak mengakses atau memodifikasi variabel lingkunganPATH
(seperti dalam skrip vbs yang tidak terkait ini, misalnya )Sesi git bash hanya akan menambahkan di depan Anda saat ini
PATH
:Ada kemungkinan bahwa sesi mingw yang dikemas dengan msysgit tidak akan mempertimbangkan
bin
dari instalasi mingw lain: Anda dapat memeriksanya dengan mengatur direktori lain (lebih sederhana) ke AndaPATH
dan melihat apakah masih terlihat di sesi bash git Anda. Jika tidak, maka itu adalah masalah yang lebih umum yang menyangkut semua direktori yang akan Anda tambahkan ke PATH.sumber
"c:\Program Files\Java\jdk1.8.0_25"\bin
di path windows saya dikonversi ke/c/Program Files/Java/jdk1.8.0_25"/bi
dalam git bash path (perhatikan karakter pertama dan terakhir yang hilang) ... jadi pertanyaannya adalah, bagaimana ini terjadi?Inilah solusi kecil saya untuk masalah yang sama (MSYS2 bash pada Windows 10).
Idenya adalah untuk mengubah jalur yang diperlukan untuk jalur gaya Unix dan menambahkannya ke bash $ PATH, semua dilakukan dalam .bashrc.
Jangan tambahkan jalur yang diperlukan untuk Menangkan PATH. Alih-alih membuat env var baru di Windows, seperti MSYS2_WINPATH, dan menambahkan semua direktori jalur Windows yang dipisahkan titik koma ke variabel ini. Tambahkan% MSYS2_WINPATH% menjadi% PATH%.
Sekarang masukkan ini dalam .bashrc Anda -
sumber
Jika nilai PATH akan terlalu lama setelah variabel PATH pengguna Anda telah digabungkan ke variabel PATH lingkungan, Windows akan diam-diam gagal menggabungkan variabel PATH pengguna.
Ini dapat dengan mudah terjadi setelah perangkat lunak baru diinstal dan menambahkan sesuatu ke PATH, sehingga merusak perangkat lunak yang diinstal yang ada. Windows gagal!
Perbaikan terbaik adalah mengedit salah satu variabel PATH di Panel Kontrol dan menghapus entri yang tidak Anda butuhkan. Kemudian buka jendela CMD baru dan lihat apakah semua entri ditampilkan dalam "echo% PATH%".
sumber
Coba pindahkan direktori ke awal variabel path Anda. Saya memiliki masalah yang sama dengan Anda setelah menginstal p4merge. Direktori perforce ditambahkan ke path dan p4merge ditemukan oleh cmd.exe, tetapi bukan git shell (mingw). Setelah pencarian sia-sia, saya mencoba hanya mengedit variabel sehingga direktori perforce muncul pertama kali di jalur saya. Saya menyalakan git shell dan, voila, direktori termasuk dalam output dari
$ echo $path
, dan$ p4merge
membuka p4merge.Ini adalah semacam jawaban yang lemah, karena saya tidak mengerti mengapa itu bekerja, tetapi jika bekerja membantu orang lain, bagus.
sumber