このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

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の実体らしい。

パスの通し方

現状は、

  1. C:\Installed\MinGW\msys\1.0\bin
  2. C:\Installed\MinGW\bin
  3. C:\Installed\Git\cmd

この状況では、

  • sh → C:\Installed\MinGW\msys\1.0\bin\sh.exe
  • gcc → C:\Installed\MinGW\bin\gcc.exe
  • gitk → C:\Installed\Git\cmd\gitk.exe

となる。

次のように変更する。

  1. C:\Installed\Git\bin
  2. C:\Installed\Git\usr\bin
  3. C:\Installed\MinGW\bin
  • sh → C:\Installed\GitW\bin\sh.exe
  • gcc → C:\Installed\MinGW\bin\gcc.exe
  • gitk → 使えない

git-guiとgitkが使えなくなるが、git自体は C:\Installed\GitW\bin\git.exe を経由して使えるはず。

後で試してみる。

[追記]Git bash(git for windowsbash)を使いたいなら、

  1. C:\Installed\Git\usr\bin
  2. C:\Installed\MinGW\bin

だけでもいいかもしれない。bash, sh, その他は Git\usr\bin\ にあり、それは /usr/bin/ に見えている。/bin/sh, /bin/bash は必要だが、Git\bin\ にモノがあるから、パスはなくてもいいだろう。C:\Installed\Git\bin\ = /bin/ にパスを通さないと動かないものはないはず。[追記]