Revision History | ||
---|---|---|
Revision 0.0.1 | 2003.2.3 | Revised by: kaepapa |
First release | ||
Revision 0.0.2 | 2003.2.8 | Revised by: kaepapa |
Changes for sourceforge.jp |
このドキュメントにはPuTTYを経由したEclipse及びWinCVSからのsourceforge CVSシステムの利用が記録されています。今回はsourceforge.jpへの接続に関して書かれていますが、一般のcvsリポジトリへのext接続にも適用できることが書かれていると思います。
このドキュメントの作成者はkaepapa<kaepapa@sourceforge.jp> です。
Eclipseはhttp://www.eclipse.org/にて開発されている総合開発環境です。JavaをはじめCやPHPなども開発する事が可能であり、オープンソースなプロジェクトであることから昨今注目されています。WinCVSはhttp://www.wincvs.org/で開発されているWindows環境におけるCVS利用時のデファクトスタンダードといっても過言ではないと思われるGUIなCVSフロントエンドです。ごった煮と呼ばれる日本語化も行われています。またPuTTYはhttp://www.chiark.greenend.org.uk/~sgtatham/putty/にて開発されているWindows環境におけるssh2接続をサポートしたTelnet/SSH Clientです。ここではPuTTY本体以外にもPSCPやPSFTPなど有用なアプリケーションが配布されていますので、ぜひ一度覗いてみることをお勧めします。
それぞれの有用性に関して、ここでは詳しい紹介はしませんがWeb上にはわりと多くの情報が存在していると思いますのでぜひ検索してみてください。
Linux上で開発を行いCVSにCommitするのはOpenSSHが標準実装といっても過言ではない環境なのでそれほど難しくないかもしれませんが、Windows環境ではなかなか日本語ドキュメントがありません。ですのでまずはPuTTY環境の構築から紹介します。
Windows環境においてputtygen.exeを使用した鍵生成を行う場合は、Web上に多数の情報があるので省略します。今回はLinux上で作成したOpenSSHな鍵をPuTTYで使用可能なSSH形式な鍵へと変換を行い環境を構築したいと思っています。
PuTTY Ver.0.52までは出来なかったこの変換がVer.0.53から可能となりました。変換にはputtygen.exeが必要になりますのでダウンロードしておいてください。PuTTY関連のプログラムを一括してダウンロードする事も可能です。http://www.chiark.greenend.org.uk/~sgtatham/putty/download.htmlこちらからzipで固められたものや、installer付きなものもダウンロードできます。
![]() | zipで固められたものをダウンロードしてきた場合は、展開する場所に注意が必要です。WinCVSから利用するときにProgram Files等のスペースを含んだフォルダがパスに含まれると実行ができなくなりますので、C:\puttyなどのフォルダに置くようにしてください |
またLinux上における鍵生成方法は
$ssh-keygen -t rsa |
でOKですし、Webに情報が溢れてますのでここまでにします。生成された秘密鍵をWindows上へscpなりFDでコピーしておいてください。
まずputtygen.exeを起動し、メニューの[Conversions]-[Import Key]を選択します。ここでコピーしておいたLinux上で作成済みの秘密鍵を指定し、パスフレーズを入力することでImportができます。そして必要ないかもしれませんがParametersのType of key to generate:を念のためSSH2 RSAに指定しておきました。続いてSave private keyボタンを押し、名前をそのままid_rsaで保存することでPuTTY(SSH)形式の秘密鍵(id_rsa.PPK)が作成されます。上書きするかとか聞かれるかもしれませんが独自形式を選択してあれば.PPKな拡張子がつきます。
確認のため鍵を作成したLinuxへPuTTYで接続してみてください。日本語を使用するにはhttp://hp.vector.co.jp/authors/VA024651/で配布されているパッチの当たったものを使用してください。接続できればOKだと思います。もちろんパスワード認証でなく鍵認証です。これでssh2接続は可能となったと思います。
上記でローカル上の鍵の準備は済みましたが生成した公開鍵をsourceforge.jpに登録する必要があります。ここではsourceforge.jpでのアカウント作成の説明は省略しすでにアカウント登録が済んでいるものとします。
まずはsourceforge.jpへログインしてください。アカウント管理を開きCVS/SSHで共有する公開鍵の鍵の編集を開きます。ここで表示されるウインドウにLinux上で作成した公開鍵をペーストで貼りますが、このとき改行コードが入ってしまうと正しく鍵を登録する事ができませんので注意が必要です。正しく登録できたかは更新ボタンを押した後、再びアカウント管理画面が表示されCVS/SSHで共有する公開鍵のあとに"1"と表示されていれば問題無いはずです。
これでsourceforge.jpへの鍵の登録は完了しました。
ではまずpageant.exeの準備をします。pageant.exeはLinuxでいうところのssh-agentですが、セキュリティ保護の目的からか設定を保存することはできません。cvs以外でもPuTTYを使ってサーバへの接続を行いたいのでWindows起動時にpageant.exeを起動してしまいたいと思います。最初にpageant.exeのショートカットを作成します。作成したショートカットを右クリックしてプロパティを開き、秘密鍵を起動オプションとして渡します。
C:\bin\pageant.exe C:\bin\id_rsa.PPK |
![]() | pageant.exe等のPuTTYプログラム及び秘密鍵がC:\bin以下に置かれているものとする。 |
上記のようなショートカットを起動時実行するようにしておけば、起動時以下のようなウインドウが開き、パスフレーズを1度入力することで再起動しなければその日1日はずっとパスフレーズ入力を解除してくれます。
ここで外部プログラム(EclipseやWinCVS等)が使用する接続設定を作成します。これがないと接続できませんので気をつけてください。最初はpageant.exeのNewSessionから接続設定を作成しないと駄目なのかと思いましたがそうでは無いようです。ではputty.exeまたはputtyjp.exeを起動するかタスクバーにあるpageant.exeのアイコンを右クリックしてNewSessionを選択してください。以下に示すのはputtyjp.exeを起動した画面です。この時pageant.exeは起動していなければなりません。
[セッション] ホスト名(またはIPアドレス) :cvs.sourceforge.jp ポート :22 プロトコル :ssh [接続] 自動ログインのユーザ名 :kaepapa (sfに登録してあるID) [接続]-[SSH] 優先するSSHプロトコルバージョン :2 or 2only (今回はSSH2RSAな鍵を使用しているため) [接続]-[SSH]-[認証] 認証のためのプライベートキーファイル :実際の秘密鍵へのフルパス |
上記のように設定を行い、この設定を保存します。
![]() | 保存名は任意でかまいませんがEclipseやWinCVSでホスト名を設定するときに実際のホスト名と違う保存名を使用した場合には必ず使用した保存名を指定する必要があります。今回は間違わないようホスト名そのままの保存名を使いました。また優先するSSHプロトコルバージョンは1のままだと接続できなくなりますので必ず2を選んでください。 |
では実際に接続してみます。先ほど行った設定が読み込まれている状態で開くボタンを押してください。すると新しいウインドウが開きなにやら文字が表示されたのち勝手に閉じてしまうと思います。これが正常な終了です。
これでPuTTYの設定と準備が終わりました。
この設定が済んだことによりputty.exeまたはputtyjp.execvsサーバへのアクセス以外にもshells.sourceforge.jpへのログインも可能となりました。先ほど行った設定のサーバ名をshells.sourceforge.jpと変更することでログインできます。
j2sdk、Eclipse等のインストールはすでに済んでいるものとします。まずはEclipseのショートカットを用意しました。新しいworkspaceの方が管理しやすいと思うので-dataオプションをつけて作成しました。適用ボタンを押して修正を反映させてください。これでC:\rumbleというフォルダを作成してそのなかにこのプロジェクトがすべて保存されることになります。
C:\eclipse\eclipse.exe -data C:\rumble |
このショートカットからこのプロジェクトに対するEclipseの起動を行うことになるわけです。ではこのショートカットをダブルクリックし、Eclipseを起動してみます。最初にExt接続メソッドを設定します。メニューの[ウインドウ]-[設定]を選択すると以下のような設定ウインドウが開きます。この左のtreeで[チーム]-[CVS]-[Ext接続メソッド]を選択してください。ここでCVS_RSHフィールドにplink.exeへのフルパスを指定します。適用ボタンを押してOKでウインドウを閉じてください。
C:\bin\plink.exe |
左上にあるパースペクティブを開くボタンを押して、CVSリポジトリー・エクスプローラーを開きます。
CVSリポジトリーというウインドウが開いたら、そこで右クリックしメニューの[新規]-[リポジトリー・ロケーション]を選択します。すると下記のような設定ウインドウが開きますので設定値を入力してください。
ホスト :cvs.sourceforge.jp (putty.exe上での保存名) リポジトリー・パス :/cvsroot/rumble-jp (ここは参加するプロジェクト名) ユーザー :kaepapa (自分のID) パスワード :空白 接続型 :ext |
上記のように設定を行い、OKボタンを押すとcvsへの接続チェックを行い次のようにロケーションが追加されれば成功です。
これでロケーションを開き開発を行うモジュールをプロジェクトとしてチェックアウトすれば開発をはじめることができます。
ここではWinCVSはすでに導入済みであり、PuTTY関係の準備が整っているものとします。また使用するWinCVSのバージョンはplink.exeを使うには1.3が必須とどこかでみた記憶があったので、1.3Beta10を使用しています。また使わないかもしれませんが(汗 PythonもVer.2.1.3を導入してあります。
はじめてWinCVSを起動するとHOMEを決めたりしなければならないことがあります。HOMEとはつまりCVSからチェックアウトしたデータを保存しておくフォルダのことです。続いてsf.jpへの接続設定をします。各項目は以下のように設定しました。
Authentication: ssh Paht: /cvsroot/rumble-jp Host address: cvs.sourceforge.jp User name: kaepapa CVSROOT: kaepapa@cvs.sourceforge.jp:/cvsroot/rumble-jp |
![]() | 上記設定値はEclipseで設定したものとほぼ同じです。 |
では続いて接続手段であるsshについての設定を行います。上記ウインドウのSettingsボタンを押すと以下のようなウインドウが表示されます。
RSA public identity file: C:\bin\id_rda.PKK If ssh is not in the PATH: C:\bin\plink.exe Additional ssh options: -ssh |
上記のように秘密鍵とplink.exeへのパスを設定し、sshのオプションを指定します。
以上で設定は終わりです。有効にWinCVSを使うためにはdiff等のプログラムも必要となることでしょう。しかしここでは、sourceforge.jpへのExt接続が主たる目的であるため省略します。
では早速チェックアウトしてみましょう。メニューの[Create]-[Checkout mocule...]を選択してください。そうすると以下のようなウインドウが表示されます。
Module name and path on the server: project-site |
モジュール名を指定し、OKボタンを押すとチェックアウトが行われます。
チェックアウトしたファイルを編集し、開発をはじめることができるようになりました。
ここまでの作業でsourceforge.jpへのCVSExt接続が問題なく行えるようになります。ここまで到達するまでにWebでの様々な情報を検索しようとしましたがあまり有用と思われるものがありませんでした。しかし唯一WebStudioJapanの特集記事http://webstudio.japansite.org/modules/wfsection/index.php?category=3に情報がありました。またこの記事の執筆者であられるsakaikさんhttp://keikei.s21.xrea.com:8080/にフォーラムにて助言を賜りましたことをここに厚く御礼申し上げます。
PuTTY公式サイトhttp://www.chiark.greenend.org.uk/~sgtatham/putty/
Eclipse公式サイトhttp://www.eclipse.org
WinCVS公式サイトhttp://www.wincvs.org/
WebStudioJapan特集記事http://webstudio.japansite.org/modules/wfsection/index.php?category=3
sakaikさんサイトhttp://keikei.s21.xrea.com:8080/
Robocode Rumble-JPプロジェクトhttp://rumble-jp.sourceforge.jp
ネットワーク管理者(の卵)養成講座 PuTTYでssh2プロトコルを使ってssh接続http://www.net-newbie.com/putty.html