リリース作業手順

前提

  1. Git の使い方をそこそこ理解していること
  2. GnuPG の自分の鍵を持っていること (タグの署名に必要です)
  3. OpenTween のコミットおよびリリース権限を持っていること (欲しい人言ってね)

手順

1. OpenTween 本体のリポジトリでの作業

ここでは <ユーザー名>@git.sourceforge.jp:/gitroot/opentween/open-tween.git がリモートリポジトリ origin に設定されているものとして進めます。別のリモートリポジトリ名を使用している場合は適宜読み替えて下さい。また、説明の中に出てくる x.y.z もリリースするバージョンに合わせて読み替えて下さい。

  1. コミットされていない変更を消去する (保持しておきたい変更は事前にトピックブランチを作りそこにコミットしておくこと)
    • git reset --hard HEAD
    • git clean -fd
  2. リモートの master ブランチを取得し移動する
    • git fetch origin
    • git checkout -B master origin/master
  3. OpenTween/Properties/AssemblyInfo.csOpenTween/Resources/ChangeLog.txt をリリースするバージョンに合わせて変更し、コミットする (まだ push は行わないこと)
    参考: http://sourceforge.jp/projects/opentween/scm/git/open-tween/commits/7772607e58e5c4b7311a2aada9f4e3208163ec60
    • editor OpenTween/Properties/AssemblyInfo.cs
    • editor OpenTween/Resources/ChangeLog.txt
    • git add OpenTween/Properties/AssemblyInfo.cs OpenTween/Resources/ChangeLog.txt
    • git commit
  4. タグを切る (この時に GnuPG による署名が行われます)
    • git -s -m 'OpenTween x.y.z' OpenTween_vx.y.z HEAD
  5. この状態で OpenTween をビルドし、リリース用の zip アーカイブを作成する
    • cd OpenTween
    • msbuild OpenTween.csproj /p:Configuration=Release
    • cd bin/Release
    • mkdir OpenTween
    • copy en zh-CHS LICENSE* OpenTween.exe OpenTween.XmlSerializers.dll OpenTween
    • zip -r OpenTween_x.y.z.zip OpenTween
  6. 次バージョンに合わせて OpenTween/Properties/AssemblyInfo.csOpenTween/Resources/ChangeLog.txt を変更し、コミットする
    参考: http://sourceforge.jp/projects/opentween/scm/git/open-tween/commits/202c5b387a4802fd906e9ead8cd4efab200a05f0
    • editor OpenTween/Properties/AssemblyInfo.cs
    • editor OpenTween/Resources/ChangeLog.txt
    • git add OpenTween/Properties/AssemblyInfo.cs OpenTween/Resources/ChangeLog.txt
    • git commit
  7. origin に master ブランチとタグを push する
    • git push origin master OpenTween_vx.y.z
  8. 次の節へ進む

2. SF.JP への新規リリースの追加

  1. http://sourceforge.jp/projects/opentween/ のメニューバーから ダウンロード → 管理 を開き、「パッケージ: opentween」の新規リリース作成画面を開く。
  2. 下図のように入力項目を埋め、新規リリースをアップロードする(前の節で作成したzipアーカイブを忘れずに選択すること)
    リリース新規作成.png
  3. 次の節へ進む

3. version.txt の更新

version.txt 自体の仕組みについては VersionTxt を参照。

  1. (もし無ければ) open-tween_status のリポジトリを clone する
    • git clone <ユーザー名>@git.sourceforge.jp:/gitroot/opentween/open-tween_status.git
    • cd open-tween_status/
  2. コミットされていない変更を消去する (保持しておきたい変更は事前にトピックブランチを作りそこにコミットしておくこと)
    • git reset --hard HEAD
    • git clean -fd
  3. リモートの master ブランチを取得し移動する
    • git fetch origin
    • git checkout -B master origin/master
  4. version.txt をリリースするバージョンに合わせて編集し、コミットする
    参考: http://sourceforge.jp/projects/opentween/scm/git/open-tween_status/commits/d8f20e21ad8a0acb71daffec4d7189425f39e723
    • editor version.txt
    • git add version.txt
    • git commit
  5. origin に master ブランチを push する
    • git push origin master
  6. しばらくすると http://www.opentween.org/status/version.txt に反映されます
  7. 次の節へ進む

4. 最後に

  1. Twitter で宣伝する
  2. 日が昇る前に寝ましょう