Windows7でgitが使えるように設定したので、忘れないうちに設定した内容を一通りメモしておく。設定したのはgit bashのみのハードな環境。Git GUI、Tortoise Gitは設定しない。
msysgitダウンロード、インストール
msysgit - Project Hosting on Google Codeからダウンロードする。
ダウンロードファイルが
- Git-x.x.x.x.exe
- PortagleGit-x.x.7z
- msysGit-fullinstall-x.x.exe
- msysGit-netinstall-x.x.exe
といくつかあるのだが、通常はGit-x.x.x.x.exeをダウンロードした。そしてインストール。今回はGit bash(ターミナルからgitを利用)のみを設定した。
Tortoise Gitの利用まで考えるとインストール先は下手に設定しない方がよい(Tortoise GitにはmsysGitが必須で、msysGitのデフォルトパスがあらかじめTortoise Gitに設定されているから。何も設定しなくてもTortoise Gitが利用できる)
msysgitを日本語の対応する
このままでは
- git commitのコメントで日本語入力できない
- git logで日本語表示されない
という問題が出てくるので、これらに対処。
git commitのコメントはTeraPadから入力する事に。そしてTeraPadをインストール。
今回はUTF-8を漢字コードで使用するのでTeraPadのデフォルトの文字コードをUTF-8Nにしておいた(オプション→文字コードで変更) ひょっとしたら必要ないかもしれない。
日本語が表示にはlessとnkfが必要なので、msysGitのbinフォルダ(c:Program FilesGitbin)へコピー(lessは上書きコピーになる)
次に日本語が扱えるように設定を変更。etcフォルダ(c:Program FilesGitetc)にあるinputrcの15行目付近を以下のように追加&変更
set meta-flag on
set input-meta on
set output-meta on
set convert-meta off
set kanji-code utf-8
次に、同じくetcフォルダ(c:Program FilesGitetc)にあるprofileに以下を追加
export GIT_EDITOR="'c:Program FilesTeraPadTeraPad.exe'"
export GIT_PAGER="nkf -s | less"
GIT_EDITORはお好みのエディタで。
これで日本語でコメント入力 & log表示ができるようになった。
hostsの編集
次にssh経由で海外にある自前のgitリポジトリにアクセスできるように設定する。 msysGitとは直接関係無いが、外部gitリポジトリへIPアドレスを直接指定してアクセスするのは面倒なので、hostsファイルに外部サーバのアドレスを登録する。
その時はc:/Windows/system32/drivers/etc/hosts をエディタで編集するのだが、
- 管理者権限を持っているユーザでログイン
- 右クリックして「管理者として実行」でエディタを起動
の2つを行なわないとhostファイルが編集できないのを忘れてはいけない。hostファイルを開いた後は、以下のように追加する。
12.34.56.78 githost
これで「ping githost」でレスポンスが返ってくるようになる。いちいちIPアドレスを入れなくていいのは楽チン。
sshの設定
まずはssh接続に必要な鍵を生成する。このあたりはLinuxのそれの流儀と同じ。git Bashだとsshも予めインストールされている。
git Bashから
$ ssh-keygen -t rsa -C "example@gmail.com"
と実行すると、 ~/.ssh/以下にid_rsa, id_rsa.pubが生成される。パスフレーズも要求されるが今回は設定してない。秘密鍵、公開鍵の扱いはLinuxでのssh接続と同じ扱いになる(このあたりは割愛) あ、ファイルのアクセス権限は設定不要だ。これはLinuxと違う。
次に、アクセスするsshサーバのポート番号を変更しているので、それも設定する。.ssh/configを開き(無ければ新規作成)
Host githost
HostName githost
Port 12345
と、ホスト毎にSSHのポート番号を指定する。
あとは、Linuxなどでgitを利用したのと同じ方法となる。これで使えるようになった。
足りないと思った箇所は後日にでも追加するつもり。