自宅サーバにSubversionを入れて開発が出来るようにしました。
- Subversionでバージョン管理
- SVN+SSHでアクセス
- 認証は公開鍵
- クライアントはSubclipse
SSHサーバはすでに構築してあったので、まずはSubversionのインストールして、リポジトリを作成。
aptitude install subversion
svnadmin create ~/project/test/svn
しかし、Eclipseで鍵認証で入れません。Puttyでは入れるし、Eclipseでもパスワード認証なら入れるのに。
解決
ここで数時間詰まった結果、原因は秘密鍵の形式がPutty形式だという単純なものでした。puttygenで鍵を作ったとき、"Save private key"ボタンを押すと、putty形式の秘密鍵が出力されますが、それはSubclipseでは使えません。
メニュー"Conversions"->"Export OpenSSH Key"で作った秘密鍵を使う必要があります。(公開鍵は共通です)
仕方ないので鍵を作り直し。以前の公開鍵も使いたいので、
ssh-keygen -i -f new.pub >> new_key
cat new_key >> authorized_keys
rm new_key
rm new.pub
のように公開鍵を追加しました。
以上の作業で、Subclipseで鍵認証を使えるようになりました。環境変数の設定が必要という情報が多かったですが、今回は設定無しでも動きました。
その後、サーバ側でCheckoutしないで「svn updateができない」とか言ったり、post-commitが動かないと思ったらbashをbachと書いていたり、ヘボいミスで時間がかかりましたが、何とか使える段階に持って行けました。
引き続き、一人前のサーバ管理者目指して頑張ります。