RACK/Contributing/ja

= Getting started = はじめに、Developer's Guideに目を通しておいてください. Developer's Guideには、コントリビューションをするため必要なアカウントのセットアップやContributor License Agreementへの署名の手順、およびコミットのプッシュやコードレビューの方法などが記載されています. 準備ができたら、次のセクションに進んでください.

= Setting up your git = ユーザ名とメールアドレスを設定します. git config --global user.name "Firstname Lastname" git config --global user.email "your_email@youremail.com" Gerritユーザ名を設定します. git config --global gitreview.username "your_gerrit_username" 設定を確認して下さい. git config --list

Installing git-review
pip install git-review

= Your first commit =

Setting up your local branch
git clone https://github.com/stackforge/rack.git cd rack git checkout -b [branch name] git review -s "git review -s"コマンド実行時にエラーが出力された場合、SSH鍵の登録やライセンスの署名漏れなどが原因として考えられます. もう一度Developer's Guideを確認して下さい.

branch nameは命名規則があります.
 * blueprintを開発する場合: bp/{blueprint name}
 * bugのパッチを開発する場合: bug/{bug number}

Make and push your change
パッチを書いたら、Gerritにプッシュします. Gitのコミットメッセージを書くときは、OpenStackのガイドラインに従うようにしてください. 以下にいくつか列挙します.
 * コミットメッセージの1行目は50文字以内とする
 * 以降の各行は78文字以内とする
 * ２行目は空白行とする
 * 最終行はblueprintもしくはbugのリンクを記載する
 * 各行の末尾に空白が入らないようにする

例: Adds a new api Long multiline description of the change ... Implements: blueprint add-new-api Closes-Bug: #123456 Change-Id: I4946a16d27f712ae2adf8441ce78e6c0bb0bb657

Change-Idはgit-reviewによって自動的に付与されます. 最終行にはパッチの種類に応じて以下を記載します.
 * blueprintに関するパッチの場合: Implements: blueprint [blueprint name]
 * bugに関するパッチの場合
 * このパッチでクローズされる場合: Closes-Bug: #{bug number}
 * このパッチでbugの一部がFixされる場合: Partial-Bug: #{bug number}
 * 単なる関連を示すだけの場合: Related-Bug #{bug number}

そのあと、パッチをプッシュします. git commit -a git review -v

= Blueprints = OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています. OpenStackにおけるBlueprint運用フローについては Blueprints を参照してください.

Blueprints lifecycle

 * Launchpadにてblueprintを起票します.
 * RACK DriversのメンバーがPriorityを指定します.
 * 開発を開始したら、Implementationを"Started"に変更します.
 * 開発が完了したら、"Implemented"に変更します.

Register blueprint
Launchpad上の記述は全て英語とします. blueprintを起票するときは、以下に従ってください.

Specification
blueprintの詳細は新規にWikiページを作成し、そこに記述します.


 * htps://wiki.openstack.org/wiki/RACK/{機能名}/ja

Specificationは日本語でOKとします. フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください.

= Bugs = OpenStackのBug運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています. OpenStackにおけるBug運用フローについては Bugs を参照してください.

Bugs lifecycle

 * Launchpadにてbugを起票します.
 * bugの再現性が確認されたら、RACK DriversのメンバーはImportanceを決定し、StatusをConfirmedに変更します.
 * パッチをGerritにプッシュすると、StatusがIn progressとなり、パッチ投稿者がAssigneeとなります.
 * パッチがマージされると、Gerritにより自動的にStatusがFix Commitedに変更されます.

Register bug
Launchpad上の記述は全て英語とします. bugを起票するときは、以下に従ってください.