2010年10月16日土曜日

Subversion & Apache & subclipse の導入

複数の環境でソースの同期を行うことが面倒になってきたので、
Subversion を導入してみることにしました。

環境は Windows Vista Ultimate SP2 32bit と、
Eclipse Galileo 3.5.2 です。

導入設定は、以下の3つ行いました。

  • Subversion - バージョン 1.6.13
    バージョン管理を行うソフトウェア。
  • Apache - バージョン 2.2.16
    subversion を HTTP 経由でアクセスするために使用。
  • subclipse - バージョン 1.6.14
    Eclipse 用のプラグイン。
    Apache 経由で subversion にアクセスさせる。


以下が導入手順です。
  1. Subversion 及び Apache のダウンロード

    Subversion は以下のサイトより、Windows 版のバイナリ・パッケージをダウンロードします。

    http://subversion.apache.org/packages.html

    Windows 版のパッケージは、いくつかあるようですが、
    以下を導入することにしました。

     Win32Svn (32-bit client, server and bindings, MSI and ZIPs; maintained by David Darj)

    上記サイトより、Setup-Subversion-1.6.13.msi をダウンロードしました。


    Apache は以下のサイトより、
    httpd-2.2.16-win32-x86-no_ssl.msi をダウンロードしました。

     http://httpd.apache.org/download.cgi


  2. Subversion のインストール
    Setup-Subversion-1.6.13.msi を実行します。
  Next を押す。

  Next を押す。

  インストールするフォルダを指定。

  Install を押す。

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

  完了すると以下のような画面が表示されるので、Finish を押す。


  以上で、subversion のインストールは完了です。


  1. レポジトリ作成
    インストールが完了すると、自動的に環境変数 Path に、
    C:\Program Files\Subversion\bin が追記されます。

    コマンド・プロンプトを起動し、以下のコマンドを実行して、レポジトリを作成します。


    C:\>mkdir C:\svn

    C:\>svnadmin create C:\svn\test_project

    C:\>svn mkdir file://localhost/C:/svn/test_project/trunk -m "trunk作成"

    リビジョン 1 をコミットしました。

    C:\>svn mkdir file://localhost/C:/svn/test_project/tags -m "tags作成"

    リビジョン 2 をコミットしました。

    C:\>svn mkdir file://localhost/C:/svn/test_project/branchs -m "branchs作成"

    リビジョン 3 をコミットしました。

    C:\>

  2. Apache のインストール

    httpd-2.2.16-win32-x86-no_ssl.msi を実行します。
  Next を押す。

  accept を選択し、Next を押す。

  Next を押す。

  ドメイン名、サーバー名を localhost としておきます。
  メールアドレスも入力します。
  Apache をサービスとして稼動させるようにします。

  Next を押す。

  Next を押す。

  Install を押す。

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

  インストールが正常に完了したら Finish を押す。


  以上で、Apache のインストールは完了です。


  1. Apache 接続確認
    ブラウザを起動し、http://localhost/ として、It works! と表示されること確認します。


  2. モジュールのコピー
    C:\Program Files\Subversion\bin\ にある mod_authz_svn.so と mod_dav_svn.soを、
    C:\Program Files\Apache Software Foundation\Apache2.2\modules\ にコピーします。


  3. httpd.conf の修正
    修正前の httpd.conf は念のためコピーして保存しておきます。
    メモ帳を管理者として実行します。

    まずは、以下の2行の先頭にある # を削除し、コメントアウトから有効にします。

      LoadModule dav_svn_module modules/mod_dav_svn.so
      LoadModule authz_svn_module modules/mod_authz_svn.so

    次に、以下の2行を新規に追加します。
    追加する場所は、LoadModule の記述のかたまりの下のあたりで構いません。

      LoadModule dav_svn_module modules/mod_dav_svn.so
      LoadModule authz_svn_module modules/mod_authz_svn.so

    最後に、httpd.conf ファイルの最後に、以下の行を追加します。

      <Location /svn>
        DAV svn
        SVNParentPath "C:\svn"

      </Location>


  4. Apache 再起動
    httpd.conf の修正の修正を反映するために、Apache サービスを再起動します。
    「コントロールパネル」→「管理ツール」→「サービス」より、Apache 2.2 を再起動します。


  5. ブラウザより表示されることを確認
    ブラウザを起動し、以下の URL を入力。

      http://localhost/svn/test_project/

    以下のように、test_project が表示されることを確認します。


  1. Eclipse に Subclipse ブラグインを導入
    Eclipse を起動し、「Help」→「Install New Software...」を選択。
    Add を押し、サイトを追加します。

    Name は subclipse とし、
    Location は http://subclipse.tigris.org/update_1.6.x とします。

  Core SVNKit Library、Optional JNA Library (recommended)、Subclipse の
  3 つともにチェックを入れ、Next を押します。

  Next を押します。

  I accept ~ にチェックを入れ、Finish を押します。

  インストールが開始されます。
  途中、認証に関する警告が表示されますが、OK と答えておきます。
  インストールが完了すると、Eclipse の再起動を促されるので、再起動します。

  1. Subclipse を使用してみる
    「Window」→「Open Perspective」→「Other...」より、
    「SVN リポジトリー・エクスプローラー」を開きます。

  SVN Repositories が表示されるので、右クリックから、
  「新規」→「リポジトリー・ロケーション」を選択します。

  項番 9. でブラウザにて接続確認した URL を入力します。
  http://localhost/svn/test_project/

  無事、レポジトリーに接続できました。


  1. 既存プロジェクトのチェックイン
    「Package Explorer」より既存プロジェクトを右クリックし、
    「Team」→「Share Project..,」より「SVN」を選択することで行えます。


以上、導入までの手順を整理しました。

う~ん、これでソース管理が楽になればいいんだけど。