git リポジトリを svn に移行する

開発に使っている git リポジトリがあるとする。これを共通の svn リポジトリのツリーに突っ込みたい。
ということで色々やってみたのでメモ。

とりあえず以下の通りにやったらできた。

GITREPO=${path-to-gitrepository}
GITBRANCH=${branch-name}
SVNURL=${url-to-svn-repository}

# svn ツリーにディレクトリを作る
svn mkdir --parents $SVNURL -m "mkdir"

# git-svn で持ってくる
cd /tmp
git svn clone $SVNURL svnrepo

# 元の git repository を push する
cd $GITREPO
git push /tmp/svnrepo $GITBRANCH:gitbranch

# merge する
cd /tmp/svnrepo
git merge gitbranch

# dcommit する
git svn dcommit