プロジェクト運用手順(管理者用)

DTXMania パッケージのリリース手順

本作業は、「プロジェクト管理者」または「リリース管理者」(ファイルリリースマネージャ)の権限を持つユーザのみが行えます。

使用する Subversion クライアントは TortoiseSVN を想定しています。


(1) プロジェクトメンバへ周知する。

  • コミット予定のデータがあれば、再構築作業前にコミットしてもらう。
  • 作業開始後は、タグの作成((3)の作業)が完了するまでコミットを禁止する旨を伝える。

(2) ソリューションのバージョン情報を更新し、コミットする。

  1. 「trunk/DTXManiaプロジェクト」内のソリューションを VC#2008Express で開く。
  2. 「コード/全体/CDTXMania.cs」内にある VERSION 定数を修正する。
  3. DTXManiaプロジェクトの [プロパティ]→[アセンブリ情報] 画面で、バージョン番号を修正する。
    • 基本的に、アセンブリバージョンとファイルバージョンは同一のものとする。
  4. FDKプロジェクトの [プロパティ]→[アセンブリ情報] 画面で、バージョン番号を修正する。
    • public なインターフェースが追加変更された場合は、アセンブリバージョンを増加する。
    • そうでない場合は、ファイルバージョンの末尾の数値を増加する。
    • 何も変更が加えられていない場合は、どちらのバージョンも現状維持とする。
  5. ソリューションを保存し、VC#2008Express を終了する。
  6. trunk/ を「SVN コミット」する。

(3) リポジトリ上で、新しいタグを作成する。

  1. ローカルPCの作業コピー上の trunk/ フォルダを選択し、右クリックしてメニューから「TortoiseSVN」→「ブランチ/タグ」を選択する。
  2. 「コピー(ブランチ/タグ)」ダイアログが表示されるので、「先URL」欄にリポジトリ上の新しいタグフォルダのURLを指定し、タグを作成する。
    先URLの設定例:「https://svn.sourceforge.jp/svnroot/dtxmania/tags/101102DTXMania085)」
    このとき、リポジトリの tags/ フォルダ内に、同名のフォルダが存在していないことを確認すること。
  3. この作業が完了次第、メンバはリポジトリの trunk/ フォルダへ任意のコミットを再開してかまわない。

(4) ローカルPCの作業コピーフォルダの tags/ について、「SVN 更新」を実行する。

  • (3)で作成した新しいタグをローカルPC上に取得するため。
    ((3)の作業は、ローカルPC上ではなくリポジトリ上で実行されていることに注意)

(5) 取得したタグから、リリース用 DTXMania をビルドする。

  • (4)で取得したタグの「DTXManiaプロジェクト」フォルダ内のソリューションを VC#2008Express で開き、Release 構成をビルドする。(trunk/ 内のソリューションではないことに注意)
  • ビルドが完了すると、(4)で取得したタグの「実行時フォルダ」内に、ビルドされた新しい DTXManiaGR.exe と FDK.dll が自動的にコピーされている。

(6) (4)で取得したタグの「実行時フォルダ」の中身を zip で圧縮し、リリース用のファイル名を付与する。

  • ファイル名の例:「DTXMania085(101102).zip」
  • 留意事項:
    • ここまでのやり方でも問題はないが、新しいコピー(タグ)を作成し利用している以上、zip の中にあるすべてのファイルの「作成日付」が、(3)を実施した日に変更されてしまっている。
    • そのため、可能であれば、新しいリリースで変更があったファイルのみを直前のバージョンの DTXManiaアーカイブに上書きする形で zip を作成することが望ましい。

(7) (6)で作成した zip のリリースを行う。

  1. SourceForge.JP の「ダウンロード」タブ→「管理」を選択する。
  2. [新規作成] リンクをクリックする。([新規パッケージの作成] リンクではないので注意)
  3. 「バージョン」「リリースノート」「変更履歴」をそれぞれ記入する。
    • バージョンの例:「085(101102)」
    • リリースノートの例:「リリース85です。」
    • 変更履歴:過去のリビジョンログを元に記述する。
  4. 「ファイル」欄に(6)で作成した zip ファイルを参照指定する。
    • ステータスは「有効」のまま。
    • 「標準ダウンロード」にチェックを入れる。→ リストが表示されるので「Windows」を選択し、[閉じる] をクリックする。
  5. [リリースの作成] ボタンを押下する。

(8) ダウンロード時の標準リリースの切り替え行う。

  1. SourceForge.JP の「ダウンロード」タブ→「管理」を選択する。
  2. リリースの一覧から、直前のリリースバージョンのリンクをクリックする。
  3. 「ファイル」欄の右端にある「標準」のチェックボックスのチェックを外す
  4. [リリースの更新] ボタンを押下する。
  5. リリースの一覧から、最新のリリースバージョンのリンクをクリックする。
  6. 「ファイル」欄の右端にある「標準」のチェックボックスのチェックを付与する
  7. [リリースの更新] ボタンを押下する。
    これで、SourceForge.JP がことあるごとに表示する「ダウンロード」リンクのターゲットが、最新のリリースファイルに変更される。

(9) SourceForge.JP の「ニュース」に、リリースが完了した旨を伝える記事を投稿する。

リポジトリの再構築手順

※2010/10/31~11/1にかけて行った作業を元に記載しています。

本作業は、「プロジェクト管理者」の権限を持つユーザのみが行えます。

使用する Subversion クライアントは TortoiseSVN を想定しています。


(1) プロジェクトメンバへ周知する。

  • コミット予定のデータがあれば、再構築作業前にコミットしてもらう。
  • 作業開始後は、すべての作業が完了するまで、リポジトリに対するすべてのアクセスを禁止する旨を伝える。

(2) 全リビジョンのログを保存する。(必要あれば)

  • 次のリリースでの変更履歴の防備録として。

(3) リポジトリの内容をローカルPC(作業コピーフォルダ)へ「SVN 更新」を行う。

  • 最新のリポジトリをローカルPC上に確保するため。

(4) ローカルPC上で、作業コピーフォルダから任意のフォルダ(デスクトップ上など)へ全件エクスポートする。

  • Subversion の管理下から外れたツリーを作成しておく。

(5) SourceForge.JP プロジェクトへ「リポジトリ初期化依頼」チケットを申請する。

(6) SourceForge.JP のスタッフがリポジトリを初期化する。

  • 完了後、スタッフから該当チケットにその旨のコメントが追加される。
  • リポジトリが初期化されていることを確認し、該当チケットにお礼を記入すると同時に、状況欄を「完了」に変更する。

(7) ローカルPC上に、新しい作業コピー用フォルダを作成する。

  • 初期化後の空のリポジトリを正として作業コピーを作成するため。

(8) (7) のフォルダに「SVN チェックアウト」し、Subversion 管理下に含める。

  • 当然、チェックアウトされたデータ件数はゼロ件となる。

(9) (4)で作成した管理外フォルダから、(7)のフォルダへデータを全件 Windows コピーし、ルートフォルダを「SVN 追加」する。

  • 追加中にエラーが発生して停止してしまうことが何度もある(.svn/tmp のファイルが壊れてるたらどーたら)が、そういうときは、もう一度ルートフォルダを「追加」すれば、何事もなく残りの作業を継続できる。ええ。何度エラーが出ても。(涙

(10) (7)のフォルダに対して「SVNコミット」を実施する。

  • 無事に全件コミットできれば、リポジトリ再構築作業は完了。

(11) プロジェクトメンバに、作業が完了した旨を周知する。

  • これまでの作業コピーを破棄し、新しく SVN チェックアウトし直してもらう。