svn2gitを使用して SVN プロジェクトを git に移行しようとしています。ただし、すべての履歴を保存するのに問題があります。理由は過去にトランクを移動したためと思われます。私が使用しているコマンドは次のとおりです。
$ svn2git http://mysvnserver.com/myproject/iPhone/ --no-minimize-url --authors ../authors.txt
しかし、これは 2011 年までさかのぼる歴史しかありません。プロジェクトは実際には 2010 年に開始されました。プロジェクトは次のように始まりました。
myproject
trunk
branches
tags
しかし、2011 年に次のように変更されました。
myproject
iPhone
trunk
branches
tags
Android
trunk
branches
tags
古いトランクとブランチは iPhone ディレクトリの下にありました。この移動が行われたときから始まる歴史。iPhone ディレクトリで行うsvn log
と、短縮された履歴が表示されます。しかし、もしそうなら、私cd trunk; svn log
は完全な歴史を手に入れます。
この履歴をどのように取得するかはわかりません。私のアイデアは、2010 年までさかのぼるトランクの履歴のみを含む git リポジトリを何らかの方法で作成することでした。その後、後でこれをメイン リポジトリのブランチとして取り込み、リベースを実行して履歴を正しくします。しかし、トランクだけのためにこのレポを作成することはできませんでした。私が試してみました:
$ svn2git http://mysvnserver.com/myproject/ --rootistrunk --authors ../authors.txt
と
$ svn2git http://mysvnserver.com/myproject/ --rootistrunk -no-minimize-url --authors ../authors.txt
成功せずに。