連載
» 2013年11月28日 18時00分 UPDATE

Gitブランチを使いこなすgit-flow/GitHub Flow入門(2):git-flowのインストールとブランチ運用前のリポジトリ準備 (1/2)

数回にわたってgit-flowとGitHub Flowを使ったGitの活用テクニックを紹介します。今回は、git-flowのWindows、Mac、Linux別でのインストール手順、利用の仕方の流れ、ブランチ運用前のリポジトリ準備の流れを紹介。

[岡本隆史,@IT]

 前回の「いまさら聞けない、成功するブランチモデルとgit-flowの基礎知識」では、git-flowで利用するブランチモデルの概要について解説しました。今回は、git-flowのインストールとgit-flowを利用し始める前のリポジトリの準備について解説します。

git-flowをコマンドベースで利用

 git-flowを利用するには、コマンドラインから利用するCUIのgit-flowを利用する方法と、「SourceTree」などのgit-flowに対応したGUIを利用する方法があります。本稿では、git-flowの基本となり、Windows、OS X/Mac OS X、Linuxと全てのプラットフォームで利用するCUIのgit-flowの使い方を解説します。

 なおWindows以外は、前提としてGitコマンドがすでにインストールされている必要があります。また想定読者として、ある程度Gitの利用経験がある方を対象としていますので、あらかじめご了承ください。

git-flow利用の流れ

 git-flowの利用の流れの概要を図1に示します。

gitflow2_1.jpg 図1 git-flowの利用の流れの概要

リポジトリ準備

 リポジトリ管理者がリポジトリの作成・準備を行います。

初期設定

 各開発者は用意されたリポジトリからクローン後、git-flowのための初期化を行います。

作業

 初期設定後、担当者は各ブランチで作業を進めていきます。

リリース準備

 リリースブランチを作成し、共有リポジトリで共有します。

リリース

 masterブランチへのマージとタグを打ち、リリースするソースコードを確定します。

 上記詳細については、後の連載で紹介します。今回は、git-flowのインストールと、リポジトリ管理者による「リポジトリ準備」と、担当者の「初期化」について解説します。

Windows、OS X/Mac OS X、Linuxでgit-flowをインストール

 git-flowを利用するには、まずインストールする必要があります。git-flowのインストール方法をWindows、OS X/Mac OS X、Linuxとプラットフォーム別に解説します。

Windows

 Windowsでgit-flowを利用する場合、Gitの他にgit-flowが利用するライブラリのインストールやインストールスクリプトの実行が必要となり、OS X/Mac OS X、Linuxに比べると若干手間が掛かります。

  • Gitのインストール

 Gitのダウンロードサイトから、Gitをダウンロードしてインストールしておきます。

gitflow2_2.jpg Git - Downloads
  • 依存ライブラリのインストール

 git-flowをインストールするために必要なライブラリをGitのフォルダにコピーします。サイト「util-linux-ng for Windows」から、図2に示す「Binaries」「Dependencies」のzipをダウンロードし、必要なファイルをGitフォルダにコピーします。

gitflow2_3.jpg 図2 util-linux-ng for Windowsからダウンロードするファイル

 「Binaries」から「util-linux-ng-x.x.x-bin.zip(x.x.xはダウンロード時のバージョン番号)」をダウンロードし、zipファイルに含まれる「getopt.exe」をGitのインストール先の「bin」フォルダ(デフォルトでは、「C:\Program Files (x86)\Git\bin」もしくは「C:\Program Files\Git\bin」)にコピーします。

 「Dependencies」から「util-linux-ng-x.x.x-dep.zip(x.x.xはダウンロード時のバージョン番号)」をダウンロードし、zipファイルに含まれる「libintl3.dll」を同じくGitの「bin」フォルダにコピーします。

 図3のように「libintl3.dll」「getopt.exe」が「bin」フォルダにコピーされているか、確認します。

gitflow2_4.jpg 図3 「bin」フォルダにコピーされたファイルの確認
  • git-flowのインストール

 ライブラリのコピーが完了したら、WindowsのスタートメニューなどからGit Bashを起動し、Gitのシェルからgit-flowのインストールを行います。オフィスなどで、インターネット接続にプロキシが必要な環境であればプロキシの設定を行い、git-flowをクローンします。

$ git config --global http_proxy http://proxy.itmedia.co.jp:8080/(プロキシが必要な場合)

$ git clone http://github.com/nvie/gitflow.git


 git-flowは、サブモジュールとしてshFlagsを利用しますが、デフォルトでは、gitプロトコルでGitHubからshFlagsを取得するように設定されています。インターネットにアクセスが制限されているようなオフィス環境では、gitプロトコルでshFlagsが取得できずにエラーになってしまいます。

 次のように、取得した「gitflow」フォルダの「.gitmodules」ファイルを編集し、httpプロトコルで取得するように変更します。

  • 変更前「.gitmodules」

[submodule "shFlags"]

path = shFlags

url = git://github.com/nvie/shFlags.git


  • 変更後「.gitmodules」

[submodule "shFlags"]

path = shFlags

url = http://github.com/nvie/shFlags.git


 変更後、「gitflow」フォルダに移動し、次のようにしてサブモジュールを取得します。

$ cd gitflow

$ git submodule init

$ git submodule update


 最後に管理者権限でコマンドプロンプト(cmd.exe)を起動し、git-flowのインストーラを実行します。管理者権限で実行しないと、git-flowが正しくインストールされないので、注意してください。

 管理者権限でコマンドプロンプトを実行するには、例えばWindows 7の場合は、メニューからコマンドプロンプトを選択し、右クリックから[管理者として実行]を選択します。

gitflow2_5.jpg 図4 コマンドプロンプトの管理者権限での実行

 起動したコマンドプロンプト上で、git-flowをクローンしたフォルダに移動し、「contrib」フォルダの下にある「msysgit-install.cmd」を実行します。

C:\Users\okamototk\gitflow> contrib\msysgit-install.cmd "C:\Program Files (x86)\Git"


 引数には、Gitのインストール先フォルダを指定します。インストール先フォルダを変更した場合や、32bit版のWindowsをご利用の場合は、適宜変更してください。

 上記コマンドを実行すると、インストールスクリプトが走り、「Git\bin\git-flow」フォルダにgit-flowがインストールされます。

OS X/Mac OS X

 Gitをインストールした状態で、「Homebrew」もしくは「MacPorts」で下記のようにgit-flowパッケージをインストールするだけです。

  • Homebrewの場合

C:\Users\ok$ brew install git-flow


  • MacPortsの場合

C:\Users\ok$ port install git-flow


Linux

 ディストリビューションでgit-flowが提供されていれば、aptyumコマンドを利用してgitflowパッケージをインストールすれば簡単に導入できます。git-flowのパッケージは、Fedora/Ubuntuの最新版で用意されています。CentOSの場合は、EPELリポジトリのパッケージを利用します。

 git-flowパッケージが用意されていない場合や、最新版を利用したい場合は、上記のWindows版の手順と同様にgitflowリポジトリをクローン、「.git/config」ファイルを修正(プロキシが必要な場合)、サブモジュールのアップデートを行ってください。ルートユーザーで、クローンしたgitflowの親フォルダに移動し、下記のコマンドを実行してください。

# bash gitflow/contrib/gitflow-installer.sh


 gitflowのディレクトリへ移動して実行すると、正しくインストールされないので注意してください。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。