STEAM PLACE

エンジニアリングとマネジメント

SubversionからGitへ移行 - 移行用環境構築編

SubversionからGit移行環境構築

 概要

SvnからGitへ移行するにあたりの作業内容を記載します。
この記事では、移行環境構築にスポットを充てているので、移行手順自体は別記事を参照してください。

※作業自体は1年ほど前のもので、眠っていた記事を掘り起こしているため、情報が古い可能性がありますがご容赦ください。

移行の概要などは、SVN から Git への移行 | アトラシアンによくまとまっているので、そちらを参考にしてください。

 環境構築について

SvnからGitへの移行は、ローカルマシンで行う必要があるため、以下の環境を構築します。

  • ローカルマシン
    CentOS 6.5(移行専用環境なのでVagrant使用)
  • ミドルウェア
    • git
      1.7.7.5 以上
    • svn
      1.6.17 以上
    • java
    • git-svn

CentOS 6.5 は yum では対象のミドルウェアのバージョンを満たせないため、ソースコンパイルで対応します。
手順を一つ間違えるとやり直しなので、 Vagrant に sahara を入れて、 sandbox を使用することをお勧めします。

 各ミドルウェアインストール手順

 Javaインストール

公式のインストール手順RPMを使用したLinux x64版Javaのインストール方法に沿って行けば、難なくインストール可能です。

 Git インストール

CentOSに標準インストールされている古いgitのバージョンを最新版にあげる方法 - 手が震えたらBARに行こうを参考にさせていただきました。

 
$ sudo yum remove git
$ sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker
$ cd /usr/local/src
$ sudo wget https://git-core.googlecode.com/files/git-8.5.5.tar.gz
$ sudo tar zxvf git-8.5.5.tar.gz
$ cd git-8.5.5
$ sudo ./configure --prefix=/usr/local/
$ sudo make prefix=/usr/local all
$ sudo make prefix=/usr/local install
$ git --version

バージョン1.8.5.5になれば成功です。

 Subversionのインストール

Subversion 1.7系を CentOSで使いたい at softelメモを参考にさせていただきました。

 
$ sudo yum remove subversion
$ cd /usr/local/src/
$ sudo wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/subversion/subversion-1.7.16.tar.bz2
$ sudo tar jxf subversion-1.7.16.tar.bz2
$ cd subversion-1.7.16
$ sudo ./get-deps.sh
$ sudo ./configure --without-berkeley-db --without-apxs --without-swig --without-serf --with-ssl --with-neon
$ sudo make
$ sudo make install
$ svn --version

バージョンが、1.7.16になれば成功です。

 git-svn インストール

yum でインストールして、問題なく動作することが確認できたので、yumでインストールすれば完了です。

  • 依存関係
    • git
    • perl-Git
    • perl-TermReadKey
    • subversion
    • subversion-perl

 まとめ

以上でSvnからGitへ移行するための環境構築が完了です。
実際の移行手順は、概要に記載の記事で対応可能ですが、少しだけはまりポイントがあったので、別途記事を起こします。