私はこれを試していないので、成功するとは言いません。しかし、あなたの問題に固有のツールがいくつかあります。このうち
チェック:個人的にhttps://bitbucket.org/atlassian/svn-migration-scripts/src
は、私はmod_dav_svnのルートを行って、それが設定を取得するための挑戦の少しでしたが、私がした後、私はsvn2gitは本当に仕事の大部分をやったことがわかりました。
あなたが興味を持っている場合、あなたもこれをチェックすることができます:ここでhttps://github.com/nirvdrum/svn2git
が私のApacheの設定です:
# apache_svn_dav.conf
# Not safe to use in production.
<Location /repos>
DAV svn
SVNPath /opt/svnroot
Deny from All
Allow from localhost
</Location>
私はそのようにように、私は移行するために必要な各SVNのレポをチェックアウトすることができました:
# svn co http://localhost/repos/reponame
私はsvn2gitメソッドを使用して、私のsvnレポのほとんどのために私の歴史のすべてを保持することができました、私のsvnレポのいくつかは、標準を持っていませんでしたディレクトリ構造(例えば、):
/trunk
/branches
/tags
あなたがここにこのルートを行くことに決定した場合、私は使用されるコマンドは以下のとおりです。
はgitのための著者のファイルを作成します(注:電子メールアドレス)
# svn log -q http://servername/repos/reponame | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2"@email.address>"}' | sort -u > authors.txt
# svn2git http://servername/repos/reponame --authors authors.txt
変換プロセスは、その後、あなたはあなたがしてアップロードすることができ.gitリポジトリを提供する必要があります。
私は自分のselfhosted GitLabで行くことにしましたが、コマンドは類似しているはず:
# git remote add origin [email protected]:gitlab-group/project.git
# git add .
# git push --all origin