Subversionの外部定義でブランチ
外部定義を設定したところで、参照元も参照先もまとめてブランチを作りたいという状況。
残念ながら…設定された外部参照先は変わりません。
一応しらべる
外部定義のサポートを通じて作られれた作業コピーは最初の作業コピーとは まだ独立したものです(つまり、svn:externals属性が実際に設定されている かも知れないバージョン化されたディレクトリからは独立したものです)。 新しいブランチ上のアイテムに定義された外部定義はまだ/trunk中の バージョン化されたリソースを参照しています。もし作業コピーの親を 再設定する必要がある場合、外部定義がそれに付随することは ありません。
というわけで、ブランチではブランチの設定をし直す必要があるとゆーことか…。
じゃあ、なんとかマニュアルオートな感じで作業してみよう…
- 外部定義している箇所を全てリストアップ
svn propget svn:externals --recursive *
すると、↓こんな感じで出力
app/controller - user svn+ssh://...trunk/user app/views - user svn+ssh://...trunk/user admin svn+ssh://...trunk/admin
- テキスト編集でコマンドを整形(v_v;)
なんか、マクロとか使ってがんばって…svn propsetコマンドを作ります。。svn propset svn:externals 'user svn+ssh://...branches/user' app/controller svn propset svn:externals 'user svn+ssh://...branches/user admin svn+ssh://...branches/admin' app/views
- そして、一括実行・・
なんて まにゅふぁくちゅある …