以前、Macで秘密鍵を使ったSSH認証を行うというのをやりました。今度はこのSSH接続を使って、Subversionへアクセスしてみたいと思います。
まず、障害となったのは、どうもポート指定がうまく行かないという点です。調べてみた結果、svn+ssh:// 〜という記述をターミナルで実施しても指定できないもののようである事がわかりました。それで、代替え案として浮上したのが、svn+ssh_hoge:// 〜という記述ができるように追加し、そこでポート指定などを実施するというものです。この方法はSSH認証の時と同じような設定管理となりますので、採用してみようと思いました。
設定ファイルの編集は、やはりターミナルから実施しました。
vi ~/.subversion/config
このファイルの中に、 [tunnels] という記述があります。その下に以下を記述します。(なおポート番号は12345に指定しています)
ssh_hoge = ssh -q -p 12345 -i /Volumes/HDD/Users/hogeUsername/.ssh/id_rsa -l hogeUsername
これで、ssh_hogeの場合のポート指定と秘密鍵指定ができました。パスワードについては指定していませんが、これは前回のSSH認証のところで書いたように、キーチェーンに登録されていればそのまま通過されますし、登録されていなければ都度問い合わせが表示されるはずです。
実際にSubversionのリポジトリへアクセスする場合は、以下のようになります。
svn co svn+ssh_hoge://samplehost.com/リポジトリのパス(var/svn/testなど) チェックアウトするパス
以上です!
助かりました!