Subversion リポジトリを Git に移行してみるよ
番長おめでとう!! 涙でブログが書けないよ・・・。どうもこんにちは、nakamura です。
さてさて最近 Git ネタが多いですが、何を隠そう今日も Git ネタでございます。しつこいと罵倒されても構わない。番長から続けることの大切さを学んだから・・・!ということで Subversion リポジトリを Git に移行する方法をご紹介します。
事前準備
git-svn が必要です。CentOS なら以下のコマンドでインストール。
yum install git-svn
あと以下の説明は基本的に trunk をそのまま master ブランチとして移行するのを想定しています。ブランチを細かく切ってあるリポジトリの移行はまだやった事がありません。この辺り を見るとさほど難しくはなさそうですが。
いざ移行
git-svn は git のサブコマンドとして使います。まずは以下のコマンドで Subversion リポジトリから Git のローカルリポジトリを作成しましょう。
git svn clone https://svn.example.com/c-brains/trunk c-brains
ログを確認すると、Subversion の履歴がきちんと移行されているのが分かります。
cd c-brains
git log
問題なさそうであれば Git のリモートリポジトリを追加。
git remote add origin https://git.example.com/c-brains.git
あとは以下のコマンドで push するだけで移行は完了です。
git push origin master
なまら簡単!
終わりに
前回の Git の GUI クライアントまとめ と同様ですが Subversion から Git にシフトしていく中で避けて通れないのがリポジトリの移行だと思います。これだけ簡単に移行できるツールが用意されているのはとても心強い!