2006年03月15日
_ Subversion。
最近作っているソフトのソースをSubversionで管理することにした。 今まで、家と会社の間をW-ZERO3を使って持ち運びしていたのだが、いい加減面倒になってしまった為である。 そんなのActiveSyncで一発じゃんって話もあるのだが、Visual Studioの作るデバッグ用のファイルがひとつ数MBと大きいため、ActiveSyncでシンクロさせちゃうとW-ZERO3のストレージがいっぱいいっぱいになっちゃうのだ。 MobSyncを使えばminiSDにシンクロできるとは思うんだけどシェアウェアなのもあってなんとなく食指が動かず…。
とまぁ、そんなわけで借りてから2年ほどほっぽらかしてあったさくらインターネットに借りているレンタルスペースにSubversionを突っ込んで、そこでソースを管理してみることにした。 幸いとゆーかなんとゆーか、私のためにあるような解説サイトがあったので言われた通りにインストール&セッティング。 ほとんど躓くことなしに、リポジトリまでは作成された。
で、この後解説ではPuTTYgenを使って公開鍵&暗号鍵を作りなさい、とあったのだが、ここで苦戦を強いられてしまった。 まぁ、結論から言えば、言われた通りにやらなかった私が悪いのだが…。
telnetするのにPoderosaを使っていたため、こいつで生成した鍵をサーバに突っ込んでいた。 さらに、TortoiseSVNというものを使ってみたかったのでこちらの解説も参考にして、(PuTTYと共に公開されている)plinkを使わずTortoisePlinkを使用しようとしていた。 というわけで、鍵のフォーマットなんてどれもいっしょだと信じて疑っていなかった私は、この公開鍵のファイルを指定して、TortoiseSVNの設定の「ネットワーク」の「SSHクライアント」に「TortoiseSVNのホーム\bin\TortoisePlink.exe -l ユーザ名 -i 暗号鍵ファイル名」と指定して実行した。
「Unable to write to standard output (stdout)」とエラーメッセージがでてしまい、うまくいかない。
いろいろ適当に設定を変えながらやってみてなんとかうまくいったのだが、結局以下のようにしないといけなかったようだ。
- plink(TortoisePlinkはこいつの派生版(?)らしい)が使う暗号鍵は、PuTTYgen.exeを使って生成したものでないといけないらしい。 ただし、PuTTYgen.exeで生成した暗号鍵では今度はPoderosaではログインできなくなってしまう。 ということで、Poderosaで生成した暗号鍵をPuTTYgen.exeでインポートして、PuTTYgen.exe側で暗号鍵ファイルを再生成してやるとよいようだ。
- TortoiseSVNの「SSHクライアント」の設定にはTortoisePlinkを指定してやるのがよさそうだ。
- で、このままだと何度となくパスフレーズを聞かれるので、Pageantは導入するべきだ。(ただし、セキュリティには気をつけよう)
コマンドラインからsvnを叩いたときにsvn+sshを有効にするには、C:\Document And Settings\[user]\Application Data\Subversion\configを開き、以下のように設定する必要がある。
[tunnels] ssh = $SVN_SSH plink
さて。 後は、今まで作ってきたソフトのソースをSubversionに突っ込んで、Subversion自身について覚えていかないと…。