SourceForge.JPユーザーのみなさん! このハウツーを努力して書いているのはSourceForge.JPでプロジェクトを簡単に始められるようにするためです。この文章は完全ではありませんし、(もちろん)時間が経つにつれSourceForge.JPにもっと機能が追加されるにつれ、新しい内容も追加されることでしょう。この文章の目的は新しいプロジェクトをはじめるときの設定をステップバイステップ方式で手引きすることです。まず、新しい開発者が直面すると思われる最もありふれた状況を概説しましょう。あなたは既にソースコードのディレクトリを保持していて、現行のCVSレポジトリがあるかも知れませんし、新しいオープンソースのプロジェクトを興すためにSourceForge.JPのすべての機能を使いたいと思っているかもしれません。また、新しい開発者と多くの利用者も引き付けたいという希望を抱いているかもしれません。さてそれでははじめましょう。
以下は簡単な流れです。詳細はこのあとに続きます
そしていくつか他にもする必要があるかもしれない……
さて、お仕事に取り掛かりましょう。
SourceForge.JP トップページなどで、右上に表示されているメニューから アカウント作成をクリックしてください。そこで、個人情報(名前とメールアドレス、いくつかの設定)を登録することによって、あなたのユーザーアカウントが設定されます。SourceForge.JPで情報のやり取りなどを含む活動をするにはユーザーアカウントが必要となります。これは1回手続きしてしまえば、「ログイン」をたどることでこのユーザーとしていつでもログインできます。
ログインすると自分のマイページが表示されます。そこには参加しているプロジェクトがリストされ、それに関する情報も表示されます。自分用のいくつかのオプションがページの横側にあります。その中で特に興味あるのが「新規プロジェクトの登録」でしょう。
「新規プロジェクト登録」のリンクを押すことでプロジェクト登録ページへ導かれます。この手続きは始めから終りまで簡単に進めることができることでしょう。すべての必要とする情報はそこに書かれています。
完了するとSourceForge.JPのスタッフにその内容が送られ、スタッフはそれがSourceForge.JPの目的にかなうかどうか検討します。もしそれがオープンソースなのであれば、すぐに許可されることでしょう。オープンソースでないライセンスであっても我々の目的に沿うものであれば許可されます。
24時間以内には、新規プロジェクトに関する我々からの返事がをあると思います(それ以上かかるようでしたら、メールを直接送ってください)。もしすべてうまくいきましたら、あなたの新しいプロジェクトが用意できた旨の通知がされます。ログインし、自分のページの下側にあなたの新しいプロジェクトのグループページへのリンクが表示されます。
プロジェクトページへのリンクを押しましょう! そうするとあなたのグループのSourceForge.JPページ(これはあなたのウェブサイトとは違います)、そしてあなたのプロジェクトを管理したり、いろいろ変更できるオプションのリストが表示されます。
今何が可能なのでしょうか? 以下のすべてが可能になります。
最初にすることは、プロジェクトの概要を入力することです。「管理」-「プロジェクト情報変更」を押してください。そして、要求される情報をフィールドに入力してください。
次に、すでに他の開発者がいるのなら全員がSourceForge.JPのユーザーとして登録しなくてはなりません。その後、みんなのSourceForge.JPのユーザー名を教えてもらい、あなたのグループのSVN/CVSとWebサイトの書き込み権限を与えるために開発者のリストにユーザー名で追加します。「管理」-「管理サマリ」から「メンバーの追加」にIDを入力してボタンを押すと、ユーザーがグループに追加されます。
インターネット上での開発が初めての人は、SVN/CVSになれるのにちょっと時間がかかります。初めての人のためにどうやって、またはどのようにやるかの簡単な概要を示します。
ソースリポジトリ(SVN/CVS)はソースコードに加えたすべての変更と変更に関する記録を保ちます。どんなときでもレポジトリの中にある以前のどのバージョンのどのファイルでも見ることができます。同じファイルを同時に複数の人が作業できるようになります。「通知(commit)」することで変更を併合したり、もし2つの変更が衝突してしまった場合にその新しいバージョンのファイルがレポジトリで置き換わってしまう前にその違いを人間の手で解決できるようにするため利用者に注意を促すことができます。
これはいいでしょ。しかし慣れるのにちょっとかかります。基本的に開発のサイクルはこんな感じです。
それではSourceForge.JPにおいてソースツリーをCVSレポジトリにインポートする詳細に移りましょう。まず最初にCVSについてのサイトドキュメントを読みましょう。さらに詳しくは、
CVS本(日本語訳) の適当な個所を読みましょう。それから次のことをやりましょう。
まず、利用しているプラットフォームのSSHとCVSを入手します。そして、sshの鍵を作成し、SourceForge.JPのアカウント管理で公開鍵を登録します。
Linuxでbashシェルなら、次を打ちます。
export CVS_RSH=ssh export CVSROOT=:ext:ログイン名@cvs.sourceforge.jp:/cvsroot/!YourProject
最初の行はCVSにSSHを使って接続するよう教えます。これはセキュリティ確保のためです。次の行はCVSにリポジトリをさがす場所を教えます。
さて、一番想定される状況は自分の持っているソースコードをCVSにインポートしたいということでしょう。インポートしたいソースコードの一番上のディレクトリに移動し、次に後で説明する内容をうめて、以下のように打ちます。
cvs import directoryname vendor start
directorynameとはレポジトリにアクセスする際に用いる名前です。もしすべてうまくいけば、全ソースツリーのインポートが行われます。
次に、あなたの古いコードベースをどこかにバックアップしてください。なぜなら、もうこれ以上その古いベースで作業はすべきではありません。新鮮なCVSバージョンをチェックアウトしましょう。
cvs checkout directoryname
そうするとCVS形式でコードの「作業コピー」が得られます。ハックしていく準備は整いました。しかし、ファイルとディレクトリの追加や消去などどんな変更も明確にCVSを通して行わなくてはいけない事は覚えておいてください。詳しくは上で示した本を見てください。
プロジェクトのメンバーは、何らかの情報を提供するためのウェブページまたはすでに構築されたサイトをSourceForge.JP上にホスティングしたいと考えているかと思います。SSHを使ってSourceForge.JPにログインしてください。たとえば、
ssh -l ログイン名 shell.sourceforge.jp
いまあなたのホームディレクトリにいることでしょう。これからはすべてのグループファイルは /home/groups/x/xx/YourProjectに保管されます。そのディレクトリに移動してください。すべてのウェブページはhtdocsディレクトリに保管します。ログアウトし、sshについてたプログラムのscpを使ってあなたのウェブページのファイルをコピーします。たとえば、
scp File ログイン名@shell.sourceforge.jp:/home/groups/x/xx/YourProject/htdocs
サイトをgzipすることをお勧めします。scpを使って一発で送ります。それからsshでログインし、それをgunzipします。
さてウェブページには何を載せればよいのでしょうか?たぶんあなたのプロジェクトの情報として以下のものでしょう。
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/YourProject
初期状態として、こういった情報がのった html ファイルのサンプルをプロジェクトのhtdocsディレクトリ 以下に用意してあります。このファイルを元に修正を行う場合は、直接編集できないパーミッションに なっていますので、コピーしてお使いください。
もしあなたのプロジェクトがそんなにまだ活発ではなく(もしくは一人ぼっちの開発者しかいない)、そしてメーリングリストがすごく静かだとしても、将来を見すえて、開発者リスト、ユーザーリスト、そして新しいバージョンをお知らせするアナウンスメントリストの3つのメーリングリストを立ち上げることをお勧めします。
これはプロジェクトページを経由して「メーリングリスト」-「管理」とリンクを辿ることでできるでしょう。それは結構単純なので特に問題はないでしょう。
はじめるにあたって開発サイクルのいくつかの簡単な詳細を示します。しかし、何事も自分で調べなくてはいけなくなるでしょう。
作業用コピーをCVSリポジトリに同期させるために更新するのには(CVSROOTとCVS_RSHを以前に示したように設定した後)、
cvs -z3 update -Pd
ファイルに変更をコミットするには、
cvs commit -m "変更のコメント" ファイル名
そして準備は整いました! みんなにわかるようにファイルモジュールをリリースしましょう!