Subversion で作業コピーの URL を変更する方法
2007-04-08-1: [Subversion]
サーバ側の都合で Subversion のリポジトリの場所を変更した場合,その作業コピーでは元の URL にアクセスできなくなります.
例えば,リポジトリを file:///repos から file:///new-repos に移動した場合,以下のようなエラーになります.
svn: No repository found in 'file:///repos'
これを解決するには,新しい作業コピーをチェックアウトしてもいいのですが,svn switch を使って,URL を書き換えてしまう方法もあります.
svn switch --relocate file:///repos file:///new-repos
これは file:///repos から file:///new-repos に URL を書き換えるということになります.
svn:// や svn+ssh:// の場合もこれでいけます.
- svn switch
http://subversion.bluegate.org/doc/re28.html
- 追記
ブランチのように同じリポジトリ内の異なるパスに再配置しようとすると,以下のようにエラーが出ます.
Relocate can only change the repository part of an URL
relocate は、URL のリポジトリ部分しか変更できません
この場合は,--relocate をつけずに単なるパスの切り替えだけでできます.
svn switch file:///repos/branches/foo .
- 追記 (2009-10-30)
TortoiseSVN の場合は、単に「再配置」を行えば OK です。