2013/06/22

msysGit

msysGitとはWindows環境で利用可能な分散型バージョン管理ツールのGit環境です。
GitHubの盛り上がりによってすっかり定着した感のあるGitですが、Windows環境でも十分な環境が整ってきています。

msysGitは、インストーラが提供されていて導入が簡単で最初にGitを試すにはよい環境だと思います。ただし、Linux環境等で利用されている周辺ツールなどが対応していないなど制約もあります。また、同時にインストールされるCUI環境のGit Bashでは日本語がまともに扱えないのでCUI環境をメインで使いたい方には注意が必要です。
Git自体の日本語の扱いは(主に日本語ファイル名ですが)、以前はとても使えない状態でしたが徐々に改善され、msysgit 1.7.10からUTF-8対応されてWindows環境で日本語ファイル名を使っても問題ない状態になりました。

今回はこのmsysGitのインストールから基本的な利用方法までを紹介したいと思います。

インストール手順

まずはインストーラをダウンロードします。
msysGitは、公式サイトの「Download」リンクをクリックし表示されたダウンロードページからインストーラを入手します。

公式サイト
ダウンロードページが表示されたらとりあえず、一番上に表示されている「Git-1.8.3-preview20130601.exe」をダウンロードすれば問題ないと思います。

Google Code ダウンロードページ


なお、Google Code上で配布されているので直接ダウンロードページにアクセスしても構いません。

ダウンロードが完了したらインストーラを起動します。
以下のウェルカム画面が表示された「Next」ボタンをクリックします。

インストールウィザード ウェルカム画面
ライセンス規約が表示されます。同意する場合は「Next」ボタンをクリックします。

インストールウィザード ライセンス規約
インストール先を指定します。Windows7環境では、「C:\Program Files (x86)\Git」がデフォルトです。基本的に特に変更する必要はないと思いますので、デフォルトのまま「Next」ボタンをクリックします。

インストールウィザード インストール先の選択

インストールするコンポーネントの選択画面です。内容は以下の通りです。
  • Additional icons : アイコンの配置に関する設定
    • In the Quick Launch : クイックランチにアイコンを配置
    • On the Desktop : デスクトップにアイコンを配置
  • Windows Explore integration : エクスプローラのコンテキストメニューとの統合に関する設定
    • Simple context menu (Registry based)
      • Git Bash Here
      • Git GUI Here 
    • Advanced context menu (git-cheetah plugin)
  • Associate .git* configuration files with the dfault text editor : Gitのコンフィグレーションファイルの関連付けに関する設定
  • Associate .sh files to be run with Bash : シェルスクリプトの関連付けに関する設定
  • Use a TrueType font in all console windows (not only for Gi Bash) : フォント設定 -> コマンドプロンプトで使用するフォントが英語フォントに変更されてしまうのでチェックを外す
個人的には必要性を感じないので、すべてチェックを外し「Next」ボタンをクリックします。

インストールウィザード コンポーネント選択
スタートメニューフォルダを選択します。
お好みのフォルダを指定して「Next」ボタンをクリックします。

インストールウィザード スタートメニューフォルダの選択
PATH環境変数の設定を行います。
内容は以下の通りです。
  • Use Git Bash only : Git Bash内でのみGitコマンドへのパスを設定する
  • Run Git from the Windows Command Promp : Git Bashに加えてコマンドプロンプト内でもGitコマンドへのパスを設定する
  • Run Git and included Unix tools from the Windows Command Prompt : Git Bash、コマンドプロンプト内の両方でGitとユニックスツール(コマンド)へのパスを設定する
上から順にWindows環境への影響が大きくなります。最下段の構成だとWindowsの純正コマンドとかぶるコマンド等については直接的に影響するのでお勧めしません。上2つのどちらかを選択しましょう。
私はデフォルトの状態で「Next」ボタンをクリックします。

インストールウィザード PATH環境変数の設定
Gitの改行コードに関連するオプションの指定です。
内容は以下の通りです。
  • Checkout Windows-style, commit Unix-style line endlings : チェックアウト時はWindowsスタイル、コミット時はUnixスタイルに改行コードの変換を行う設定
  • Checkout as-is, commit Unix-style line endings : チェックアウト時はないもしない、コミット時はUnixスタイルに改行コードの変換を行う設定
  • Checkout as-is, commit as-is : チェックアウト時、コミット時ともに変換しない設定
どういう環境で利用するかによって適切な設定は変わります。
私は自分でコントロールしたいので最下段を選択し、「Next」ボタンをクリックします。

インストールウィザード 改行コード設定
インストールが開始されます。

インストールウィザード インストール画面
インストール完了画面が表示されたら「Finish」ボタンをクリックし、インストール完了です。

インストールウィザード インストール完了画面

初期設定

インストール直後にやっておきたい設定に関する説明です。

Git Bash

msysGitのCUI環境を実行するためのシェル環境です。
Linxu系のコマンドが使えて便利なのですが、日本語がうまく扱えないのであまり利用しないかもしれませんが、とりあえずご紹介します。

HOME環境変数に格納されているホームディレクトリ配下にbash設定ファイル「.bashrc」を配置設定することができます。私はとりあえずプンプとの設定ぐらいは行います。

Git

Gitの設定です。
なお、Gitの設定の詳細は別のエントリで書きたいと思います。

UTF-8で日本語ファイル名のファイルをaddやcommitした際にファイル名がコードで表示されてしまうので以下の設定を行います。
git config --global core.quotepath false

前述の通りCUI環境で日本語がまともに扱えないのでGit Bash利用時にvimが開かないようにエディタを指定します。
git config --global core.editor "sakura.exe -CODE=4 -GROUP=9"


Gitではコミット時に名前とメールアドレスが記録されるので設定を行っておきます。
git config --global user.email hoge.piyo@example.jp
git config --global user.name "hoge piyo"


PUSH時にターゲットを指定しない場合のストラテジを設定しておきます。デフォルトでは同名のブランチを全てプッシュしてしまい思いもよらないブランチの変更をPUSHしてしまう可能性があります。(2.0ではsimpleがデフォルトになっています。)

git config --global push.default upstream

なお、push.default として設定可能な値は以下の4種類あります。

  • matching : 現在の(2.0より前のバージョンの)デフォルト値です。カレントでないブランチでも同名のブランチがリモートに存在すればプッシュしてしまう。
  • upstream : カレントに対してupstreamとして指定したブランチに対して名前が違ってもプッシュする。
  • simple : カレントに対して同名のブランチに対してプッシュする。
  • current : カレントに対してupstreamに指定されていなくても同名のブランチがあればプッシュする。
コマンドのエイリアスを設定します。git checkout を git co と短く書けるようになります。

好みで適当に設定してください。大概の操作は TortoiseGit で行うので、そんなに拘る必要はありません。git config --global alias.co checkout git config --global alias.br branch git config --global alias.st status


プロキシ環境下では、次のようにプロキシの設定も行なっておいてください。git config --global http.proxy http://example.jp:8080

とりあえず必要そうな設定はこんなところです。

PATH環境変数

インストールウィザードで設定を行った方は必要ありません。
私は自分でPATH環境変数を構成したいので、別途設定を行います。

gitコマンドが使えればとりあえずいいので、「C:\Program Files (x86)\Git\cmd」をPATH環境変数に加えます。

フロントエンド

msysGitに付属するCUI環境、GUI環境ともに使い易いものではないのでフロントエンドとして別のツールを導入します。

利用するツールはTortoiseGitです。
WindowsのExplore拡張として動作し基本的にすべてGUIで操作します。

まずはインストールです。
google code の TortoiseGit のダウンロードページからインストーラと言語パックをダウンロードします。
上の方に表示されているのがTortoiseGitのバイナリです。使っているPCのCPUアーキテクチャにあったものをダウンロードして下さい。下の方に表示されているのが言語パックです。Japaneseの行のものをダウンロードして下さい。


ダウンロードが完了したらTortoiseGit本体、言語パックの順でインストールを行います。
インストールウィザードが起動したら「Next」ボタンをクリックします。


ライセンス規約が表示されます。同意する場合は、「Next」ボタンをクリックします。


SSHクライアントの選択画面が表示されます。
TortoisePlink を利用しますので、そのまま「Next」ボタンをクリックします。


カスタムセットアップ画面が表示されます。
デフォルトの状態で問題はないと思いますので、「Next」ボタンをクリックします。


インストール確認画面が表示されたら「Install」ボタンをクリックします。


インストールが開始されます。


完了画面が表示されたら「Finish」ボタンをクリックしインストール完了です。


続いて言語パックをインストールします。
ウェルカム画面が表示されたら「Next」ボタンをクリックします。


すぐにインストールが開始されます。


完了画面が表示されたら「Finish」ボタンをクリックしインストールを完了します。


ここまで完了したらエクスプローラを起動します。
コンテキストメニューを表示し下図のようにTortoiseGitのメニューが表示されているのを確認して下さい。


コンテキストメニュー「TortoiseGit」→「Settings」を選択し設定画面を開きます。


メニュー「General」のLanguageで「日本語(日本)」を選択し日本語化します。
ここでいったん「OK」ボタンをクリックし設定を終了します。


サイドコンテキスメニューを表示すると日本語されてのが確認できます。
それでは設定の続きを行うのでサイド設定画面を開きます。



メニュー「一般」→「コンテキストメニュー」を選択します。
エクスプローラのコンテキスメニューのトップに表示するメニューを選択します。
なお、選択しないものはサブメニューとして表示されます。好みに合わせて選択を行ってください。

メニュー「一般」→「拡張メニュー」を選択します。
コンテキストメニューのサブメニューにも表示したくないメニューを選択します。好みに合わせて選択を行ってください。選択してないメニューをShiftを押しながら操作することで表示さることできるので、必要なさそうなものはとりあえずチェックを付けてしまってよいと思います。

メニュー「一般」→「代替エディタ」を選択します。
自分が使い慣れたテキストエディタを登録しておくとよいと思います。

メニュー「差分ビューア」を選択します。
WinMergeなどを利用されている場合は、「異なるリビジョンの比較に使用するプログラムの設定」に登録しておくと便利です。

とりあえずこれぐらい設定しておけば特に不自由はないと思います。

その他の環境

他のWindows上で利用可能なGit環境も紹介しておきます。
  • Cygwin:CUI環境が好みという方はCygwinを利用されるとよいと思います。
  • JGit (フロントはEGit)

0 件のコメント:

コメントを投稿