GIT_SSH_COMMAND が便利。
概要
環境変数を指定して起動してやると
gitコマンドの挙動を制御することが出来る。sshが絡む部分だとGIT_SSHやGIT_SSH_COMMANDやGIT_SSH_VARIANTなどがある模様。~/.ssh/configやgitconfigを弄ることが難しい場合や、環境に依存しないシェルスクリプトを書く場合などに役に立ちそう。
詳細
ssh が絡む部分だと git fetch や git pull や git clone や git push あたりだろうが、僕は git fetch で上手く動いてることしか確認していない。
GIT_SSH_COMMAND が使えるのは 2.3 以降
Git 2.3 has been released を見るに 2.3 以降でないと使えないらしい。
使えない場合は GIT_SSH の方が昔からあるので、それを使ったラッパースクリプトを書くやり方があるようだ。
使い所
-i で秘密鍵を指定したり -F で ssh_config を指定したり -o で好きなようにオプションを投げるような感じの使われ方が想定されているのだと思われる。
GIT_SSH_COMMAND="\
ssh \
-i /path/to/secret_access_key \
-F /path/to/ssh_config \
-o UserKnownHostsFile=/dev/null \
-o StrictHostKeyChecking=no" \
git fetch origin
締め
git も ssh も毎日使ってるのに知らない便利機能が毎日出てきて凄い。