チェックアウトしたSubversionのレポジトリのURL変更

サーバーの整理等でSubversionのURLが変更になりました。チェックアウトしたCentOS内の作業用のレポジトリがあります。一度作業用の領域を削除して再度チェックアウトすればいいですが、ファイルの数も多く時間がかかりますのでURLのみ変更する方法がありました

以下は作業用ディレクトリと新旧のレポジトリURLとなります

チェックアウトした作業用ディレクトリ
/home/admin/data1

新旧URL
旧:https://old.example.com/sub_repo
新:https://new.example.com/sub_repo

URLの変更には「svn switch –relocate 旧URL 新URL チェックアウトしているディレクトリ」となります。チェックアウトしたディレクトリを省くとカレントディレクトリとなるので、URL変更は以下の2通りになります

  • チェックアウトしたディレクトリに移動してから「svn switch –relocate~」でURLを変更する
# チェックアウトしているディレクトリに移動します
$ cd /home/admin/data1

# URL 情報を確認します
$ svn info | grep URL
URL: https://old.example.com/sub_repo/data1

# URL情報を変更します
$ svn switch --relocate https://old.example.com/sub_repo https://new.example.com/sub_repo

# URL 情報を変更されたか確認します
$ svn info | grep URL
URL: https://new.example.com/sub_repo/data1
  • チェックアウトしたディレクトリに移動しないで、チェックアウトしているディレクトリを指定して「svn switch –relocate~」でURLを変更する
# URL 情報を確認します
$ svn info /home/admin/data1 | grep URL
URL: https://old.example.com/sub_repo/data1

# チェックアウトしている作業用のディレクトリを指定して、URL情報を新URLに変更します
$ svn switch --relocate https://old.example.com/sub_repo https://new.example.com/sub_repo /home/admin/data1

# URL 情報を変更されたか確認します
$ svn info /home/admin/data1 | grep URL
URL: https://new.example.com/sub_repo/data1