当サイトにおけるソースコードのバージョン管理は主に集中型バージョン管理システムの Subversionで行っています。
しかし、Microsoft Visual Studioが分散型バージョン管理システムの Gitをサポートしたこともあり、Visual Studioベースのソリューション開発では Gitも必要になってきました。
Microsoft Visual Studio Express 2013では、ローカル Gitしかサポートされません(Express版以外は未確認です)ので、CentOS上のリモートリポジトリとローカルリポジトリ間の操作を行うため Gitクライアントが必要になります。
そこで、GUIベースの Gitクライアント TortoiseGitを Windowsにインストールしました。

事前準備

TortoiseGitは、msysGit(Git for Windows)の GUIラッパーとして動作しますので、事前に msysGitをインストールしておきます。

ダウンロード

Google Codeから以下のファイルをダウンロードします。
  • 【 32bit Windows 】
    • TortoiseGit本体 : The current version
      TortoiseGit-1.8.6.0-32bit.msi
    • 日本語パック : Language Packs - Japanese
      TortoiseGit-LanguagePack1.8.6.0-32bit-ja.msi
  • 【 64bit Windows 】
    • TortoiseGit本体 : The current version
      TortoiseGit-1.8.6.0-64bit.msi
    • 日本語パック : Language Packs - Japanese
      TortoiseGit-LanguagePack1.8.6.0-64bit-ja.msi
(※)下線部は 2013/11/03 現在の最新リリース番号です。

インストール

ダウンロードした TortoiseGit本体 を実行します。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0101.png
セットアップウィザードの開始画面です。

Next >』で次に進みます。
tortoisegit0102.png
ライセンスの確認画面です。

Next >』で次に進みます。
tortoisegit0103.png
SSHクライアントの選択画面です。

パスフレーズ付認証鍵を用いて SSH接続するため Pageantによるパスワードの代行入力を行います。
そのため PuTTYベースのクライアント [TortoiseGitPLink] を選択しています。

Next >』で次に進みます。
tortoisegit0104.png
インストールオプションの設定画面です。

デフォルトのままにしています。
Next >』で次に進みます。
tortoisegit0105.png
インストールの準備が完了したことの通知画面です。

Install』でインストールが開始されます。
tortoisegit0106.png
セットアップウィザードの終了画面です。

Finish』で終了します。

続けて、ダウンロードした 日本語パック を実行し、日本語言語パックをインストールします。
設定が必要なインストール項目はありません。

オーバーレイアイコンを有効にするため、パソコンを再起動します。

初期設定

再起動した後、TortoiseGit の初期設定を行います。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0201.png
デスクトップ上で右クリックして [TortoiseGit] → [Settings] で TortoiseGitの設定を行います。
tortoisegit0202.png
[General] で [Language] の設定を [日本語(日本)] にします。

適用(A)』で設定を適用します。
tortoisegit0203.png
[Git] - [Config source] で [Global] を選択し、コミット時に記録する ユーザー名メールアドレス を設定します。

[inherit] のチェックを外すと設定できるようになります。

適用(A)』で設定を適用します。

リモートリポジトリの複製

ソースコードの編集に先立ち、Gitサーバーのリモートリポジトリを PCへ複製(git clone)します。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0301.png
エクスプローラーを開き、リポジトリ複製先のディレクトリで右クリックし、[Git クローン(複製)...] でリポジトリの複製を行います。
tortoisegit0302.png
SSHでリモートリポジトリと接続しますので、 [URL] に
ssh://[Gitユーザー名]@[Gitサーバーホスト名]/[リポジトリ名]
の形式で入力します。
Gitサーバーのリポジトリは Gitoliteで管理しているため、例では [Gitユーザー名]には Gitoliteのログインユーザー名 gitolite
[Gitサーバーホスト名]には git.system-act.com
[リポジトリ名]には gitproject
を入力しています。

また、SSH接続は鍵認証で行われますので、[PuTTY 認証キーのロード] に Gitサーバーに登録した認証鍵に対応する PuTTYの秘密鍵 *.ppk の場所 を指定します。
tortoisegit0303.png
PuTTYまたは TortoiseGit付属の Pageantが起動・常駐していない場合は、TortoiseGit付属の Pageantが自動的に起動します。
その後、秘密鍵が Pageantに追加されていない場合は、秘密鍵のパスフレーズが要求されます。
tortoisegit0304.png
秘密鍵で Gitサーバーに接続した場合、その秘密鍵による初回の接続であれば、鍵の指紋(フィンガープリント)の確認が要求されます。
表示された鍵の指紋に間違いがなければ、『はい(Y)』で先に進みます。
tortoisegit0305.png
リポジトリの複製実行画面です。

Gitサーバーのリモートリポジトリが PCへ正常に複製された場合、[成功] が表示されます。

クローズ(C)』で終了します。
tortoisegit0306.png
Gitリポジトリが PC上に作成されています。

ローカルリポジトリへ変更内容を反映

Gitのバージョン管理は、基本的に各々のローカルリポジトリ上で行われます。
変更したソースコードをローカルリポジトリに反映させ、バージョン管理の対象にします。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0401.png
ローカルリポジトリのフォルダで [右クリック] して [Git コミット(C) -> "master"...] を行います。
tortoisegit0402.png
コミットメッセージを入力します。
例では簡単に 1行にしていますが、Gitの標準では
1行目 : 変更内容の要約
2行目 : 空行
3行目以降 : 変更した理由
の形式で入力します。

また、コミットの日時および作者を設定しています。
チェックを入れれば、自動的に内容が設定されますので、必要であれば変更します。

追加したファイルがある場合は、ローカルリポジトリに対して追加するファイルにチェックを入れます。

OK』でローカルリポジトリへの反映が実行されます。
tortoisegit0403.png
ローカルリポジトリの反映実行画面です。

ローカルリポジトリへ正常に反映された場合、[成功] が表示されます。

クローズ(C)』で終了します。

ローカルリポジトリからリモートリポジトリに反映

ローカルリポジトリに反映された変更を Gitサーバーのリモートリポジトリに反映させます。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0501.png
ローカルリポジトリのフォルダで [右クリック] → [TortoiseGit] で [プッシュ(リモートへ反映)...] を行います。
tortoisegit0502.png
反映させるブランチ、宛先を確認します。

OK』で反映が実行されます。
tortoisegit0503.png
リモートリポジトリへの反映実行画面です。

ローカルリポジトリが、Gitサーバーのリモートリポジトリへ正常に反映された場合、[成功] が表示されます。

クローズ(C)』で終了します。

リモートリポジトリからローカルリポジトリに反映

他の開発者が Gitサーバーのリモートリポジトリへ反映させた内容をローカルリポジトリに反映させます。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
tortoisegit0601.png
ローカルリポジトリのフォルダで [右クリック] → [TortoiseGit] で [プル(ローカルへ反映)...] を行います。
tortoisegit0602.png
反映させるブランチを確認します。

OK』で反映が実行されます。
tortoisegit0603.png
ローカルリポジトリへの反映実行画面です。

Gitサーバーのリモートリポジトリが、ローカルリポジトリへ正常に反映された場合、[成功] が表示されます。

クローズ(C)』で終了します。

フィードバック

記事の内容についてのご質問、ご指摘、その他ご意見等は下記にてお願いいたします。
System House ACT公式ブログ内記事 :
Windows開発環境 Git GUIクライアント TortoiseGit

トラックバックまたはコメントにてお寄せください。