クライアント証明のキャッシュ

Subclipseを使っていて、一度認証すると以降はユーザ名もパスワードも入力しなくてリポジトリにアクセスできるのが不思議だった。Subclipseでキャッシュしているというか、Subversionクライアントとしての動きなのね。確かにApplication Dataフォルダ配下にSubversionフォルダができてるね。

$ eclipse -vmargs -Djavasvn.ssh2.key=/path/to/private/key/file \
     -Djavasvn.ssh2.username=userName \
     -Djavasvn.ssh2.passphrase=optionalPassphrase

パスフレーズを書いておかないといけないのが気になっていたけど、最初に一度この引数を与えて起動してしまえば、次からは普通に起動するときと同じように引数なしで起動しても自動的に認証してくれるみたい。引数の情報がSubversion\auth\svn.sshフォルダ内にキャッシュされてるのがわかる。