Git for Windowsの構造と利用
Git/bin/ には、
- サイズ140,288 git.exe
- サイズ32,768 bash.exe
- サイズ32,768 sh.exe
bash, shはハードリンクじゃなくて、ほんとにコピーしている。ハードリンクを調べるには、管理者権限で、fsutil hardlink list ファイル名 とする。140K, 32Kだから非常に小さい。スタブだと分かる。
Git/cmd/ は、
- サイズ140,288 git-gui.exe
- サイズ140,288 git.exe
- サイズ140,288 gitk.exe
これらもスタブで実体ではない。git関連だけが cmd/ に入っている。
Git/usr/bin/ は、
- 2,060,758 bash.exe
- 2,060,758 sh.exe
2メガあるから、bashの実体だろう。msys/1.0/bin/のbashは、563,200 bash.exe なので約1/4。
Git/mingw64/bin/ に、
- 1,813,497 git.exe
これがGitの実体らしい。
パスの通し方
現状は、
この状況では、
- sh → C:\Installed\MinGW\msys\1.0\bin\sh.exe
- gcc → C:\Installed\MinGW\bin\gcc.exe
- gitk → C:\Installed\Git\cmd\gitk.exe
となる。
次のように変更する。
- C:\Installed\Git\bin
- C:\Installed\Git\usr\bin
- C:\Installed\MinGW\bin
git-guiとgitkが使えなくなるが、git自体は C:\Installed\GitW\bin\git.exe を経由して使えるはず。
後で試してみる。
[追記]Git bash(git for windowsのbash)を使いたいなら、
- C:\Installed\Git\usr\bin
- C:\Installed\MinGW\bin
だけでもいいかもしれない。bash, sh, その他は Git\usr\bin\ にあり、それは /usr/bin/ に見えている。/bin/sh, /bin/bash は必要だが、Git\bin\ にモノがあるから、パスはなくてもいいだろう。C:\Installed\Git\bin\ = /bin/ にパスを通さないと動かないものはないはず。[追記]