Git Bash のホームディレクトリを変更する

Git for WindowsGItHub が整ってきていることもあって Windows で Git を利用している

人も多いのではないでしょうか

 

ところで Windows で Git Bash を利用していると気持ち悪い現象に遭遇する

これはWindows8.1(64bit) の例だが、作業ディレクトリが

C:\Users\[UserName] になっていて ssh-keygen したときに作成されるファイル群や

.bash_history などのファイルが C:\Users\[UserName] 直下に作られしまうのだ

Windows ユーザーならこの気持ち悪さはなんとなくわかると思う

 

そこで作業ディレクトリを変更しようと思いたち、ググってみたがほとんど

まともな情報がなかったので仕方なく Git の中身を見てみる

 

C:\Program Files (x86)\Git\ を見てみるといろいろなファイルやディレクトリがあるが

どうせリーナスが作ってんだから etc のなかに設定があるんだろうと思って見たらあった

 

C:\Program Files (x86)\Git\etc\profile を見てみると40行目にこんな記述がある

 

# Set up USER's home directory
if [ -z "$HOME" -o ! -d "$HOME" ]; then
  HOME="$HOMEDRIVE$HOMEPATH"
  if [ -z "$HOME" -o ! -d "$HOME" ]; then
    HOME="$USERPROFILE"
  fi
fi

ところで私はシェルスクリプトには詳しくないので

シェル芸の得意な人間から迫害を受けているッ!

 

しかしシェルの得意ではない私でもこれくらいはわかる

  HOME="$HOMEDRIVE$HOMEPATH"

の部分を指定したいディレクリに書き換えてやれば良さそうだ

例えば D:\Git にしたいなら HOME="D:\Git" としてやればよい

 

Windows8.1 ではユーザーディレクトリの隠しフォルダであるAppData\Roaming

というフォルダにプログラムの使うちょっとしたファイルを格納してる感じがあるので自分は

HOME="$HOMEDRIVE$HOMEPATH\AppData\Roaming\Git"

に指定した

 

確認は ssh-keygen してみるなり  echo $HOME してみればよい

 

なお検索していたら、環境変数HOMEを指定するあるいは変更するという方法が

出てきたが環境変数は他のプログラムも使う可能性があるので環境変数

変更するという方法はいただけない