EOL が予定されている svn リポジトリがあり、さまざまなプロジェクトが svnrdump ダンプと svnadmin ロードによって新しいリポジトリに移動されています。説明のために、基本的なトポロジは次のとおりです。
old repo: http://oldrepo/repositories/oldname/...
new repo: http://newrepo/repositories/newname/...
この特定のリポジトリは大きく、古いワークスペースを新しいリポジトリに向けたい開発者がいます。私が見ている問題は、TortoiseSVN が再配置イベントを許可し、URL を入力するhttp://newrepo/repositories/newname
と、最初の再配置が成功したように見えることです。ただし、ワークスペースは、新しいレポのディレクトリ構造が次のようになっていると認識しています。
http://newrepo/repositories/newname/oldname
ワークスペースの oldname への参照を削除する方法はありますか? 余分な意図しないディレクトリが原因で、SVN の更新が失敗します。私が考えられる唯一のオプションは、この開発者に新しいリポジトリから必要なワークスペース全体をチェックアウトしてもらい、WIP ファイルを新しいワークスペースにコピーしてもらうことです。クライアント側に他のオプションやソリューションはありますか?
編集: 作業ディレクトリは c:\SVN\FolderA です。次のコマンドを実行するとsvn relocate http://newrepo/repositories/newname/Folder1/FolderA
、次のエラーが返されます。
svn: E155024: Invalid relocation destination: 'http://newrepo/repositories/newname/Folder1/FolderA' (does not point to target)
これがどれほど関連性があるかはわかりませんが、元のリポジトリの場所 oldrepo はフォルダーでしたが、新しいリポジトリでは newrepo (つまり: http://newrepo/repositories/newname
) が新しいリポジトリのルート レベルです。また、移行中に変更は保持されましたが、個々のバージョン番号は保持されなかったことを指摘しておく必要があります。