Fetching external item into 'path/to/example'
Updated external to revision 12345.
Subversionを使ってて「svn update」するとよく上記のようなのがでることがあるんだけど、今までどっか別のライブラリ取ってきてるんだろうなぐらいのことはわかってたんだけど、ちゃんと知らなかったので調べてみた。

さっそぐググってみると、これはSubversionのsvn:externalsというプロパティの機能らしく、たとえば自分のプロジェクトのリポジトリ内で他のプロジェクトのライブラリを使いまわしたいときなどに、このプロパティを設定しておくだけで、あたかも自分のプロジェクトの中にあるライブラリのようにsvn updateコマンドで他のプロジェクトのライブラリを更新してくれるというものらしい

で、具体的な使い方なんだけど、たとえば自分のプロジェクトのextlib/の中にotherprojという名前でhttp://svn.example.com/repos/otherproj/trunkをひもづけたいと思ったら、
% svn propset svn:externals 'otherproj http://svn.example.com/repos/otherproj/trunk' extlib
property 'svn:externals' set on 'extlib'
とかやればいい。この状態でsvn updateするとextlib/otherprojが更新されるようになります。

このプロパティを消すには以下のようにすればOK。
% svn propdel svn:externals extlib
property 'svn:externals' deleted from 'extlib'.
ちなみに、そのディレクトリにどんなプロパティが設定されているか確認したければ以下のようにproplistコマンドでわかります。
% svn proplist -v extlib
Properties on 'extlib':
  svn:externals : otherproj http://svn.example.com/repos/otherproj/trunk