ソースコードなどを管理するリポジトリをSubversionからgitへ移行する方法です。gitからSubversionへコミットを反映する方法も書きます。

・Subversionリポジトリをgitリポジトリへ変換する方法

git svn cloneコマンドを使ってSubversionリポジトリをクーロンし、gitのローカルリポジトリへ変換します。

リポジトリのコピーだけでなく、過去の履歴もちゃんとコピーできます。

Subversionでtrunkやbranches、tagsのようなディレクトリを切ってある場合には、それぞれ-T、-b、-t1オプションで指定することで、ブランチとしてコピーできます。

これでgitリポジトリ内でファイルの追加や削除、コミットができます。

・gitリポジトリをSvbversionリポジトリの最新の状態と同期させる

gitリポジトリをSvbversionリポジトリの最新の状態と同期させるには以下のよようにします。

また、gitリポジトリでの変更をSubversionリポジトリへ反映させるには以下のようにします。

どちらもクーロンをコピーしたSubversionリポジトリを対象とするので、特別リポジトリを指定する必要はありません。