2009年01月06日

svn+sshにてパスワード入力を省略

今回は、svn+sshにてパスワード入力を省略する

SVNを利用する際、よく使われるのがhttpプロトコルだが、sshでの接続もある。

Windows環境で行う場合、メジャーなものの1つにTortoiseSVNがある。

TortoiseSVN はエクスプローラーの右クリックメニューで動作し、直感的で使いやすい。

日本語化の完成度も高い。

これらをインストールして、チェックアウト時にリポジトリパスを指定すればOK。

SSHでのSVNの場合は、

svn+ssh://XXX.XXX.XXX.XXX/project/home/hoge/SVNROOT/trunk

のようなパスになるだろう。

特にこれでも問題はないのだけど、利用する度に、ユーザーID、パスワードの入力を求められる。

場合によっては、階層毎にパスフレーズの入力を求められて非常に面倒に感じる。

その煩わしさの解決方法を記録する。

まず、ユーザーIDだがこれはURLに含めてしまうのが簡単。以下のような感じにする。

svn+ssh://hoge@XXX.XXX.XXX.XXX/project/home/hoge/SVNROOT/trunk

次にパスワードだが、今回はPuTTY ごった煮版というソフトのお世話になる。

まずはputty-0.60-JP_Y-2007-08-06.zipをダウンロード後、適当なディレクトリに展開する。

今回のディレクトリパスはC:/Program Files/puttyとする。

そして、putty.exeを使って、SVNサーバーにログインする。

RSAやDSA認証の場合はPuTTYgenを使って、マウスを動かして乱数を発生させて鍵を作る。

今回はRSAやDSA認証とかしないので触らない。

puttyを触るのはここまで。

TortoiseSVNに戻って、設定のネットワークを開く。

その中のSSHクライアントにputtyのplinkwを指定する。

気をつけるのがplink.exeじゃなくて、plinkw.exeを指定すること。

plink.exeでも動くのだけど結局何度もパスワードを入力するはめになる。

で、ここでオプションでパスワードも指定する。

C:\Program Files\putty\plinkw.exe -pw hogepass

以上で、TortoiseSVNで操作してもユーザーID、パスワードを聞かれなくなる。

ついでに、Eclipse上でSVNを利用する場合は、Subclipseが有名。

Subclipseでssh+svnを利用する場合は、puttyを用意してログインするとこまで同じ。

今度は、環境変数に、SVN_SSH C:/Program Files/putty/plinkw.exe -pw hogepass

と登録する。気をつけるのは"\"でなく"/"でパスを記入すること。

これで、Subclipse上でもパスフレーズの入力は省略できる。

ただ、分かっていると思うが、この方法はセキュリティなど度外視の方法だ。(パスワード丸見えだし)

単純にパスフレーズの入力を省略するだけにすぎないので、使用する場合は状況を判断することが大切。

以上!!


posted by hana at 12:51| Comment(0) | TrackBack(0) | バージョン管理関連 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。