Difference between revisions of "RACK/Contributing/ja"
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | = Getting started = | ||
+ | はじめに、[http://docs.openstack.org/infra/manual/developers.html 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鍵の登録やライセンスの署名漏れなどが原因として考えられます。 | ||
+ | もう一度[http://docs.openstack.org/infra/manual/developers.html Developer's Guide]を確認して下さい。 | ||
+ | |||
+ | branch nameは命名規則があります。 | ||
+ | * blueprintを開発する場合: bp/{blueprint name} | ||
+ | * bugのパッチを開発する場合: bug/{bug number} | ||
+ | |||
+ | == Make and push your change == | ||
+ | パッチを書いたら、Gerritにプッシュします。 | ||
+ | Gitのコミットメッセージを書くときは、[http://docs.openstack.org/infra/manual/developers.html OpenStackのガイドライン]に従うようにしてください。 | ||
+ | 以下にいくつか列挙します。 | ||
+ | * コミットメッセージの1行目は50文字以内とする | ||
+ | * 以降の各行は78文字以内とする | ||
+ | * 2行目は空白行とする | ||
+ | * 最終行はblueprintもしくはbugのリンクを記載する | ||
+ | * 各行の末尾に空白が入らないようにする | ||
+ | |||
+ | 例: | ||
+ | Adds a new api | ||
+ | <blank line> | ||
+ | Long multiline description of the change | ||
+ | ... | ||
+ | <blank line> | ||
+ | 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 = | = Blueprints = | ||
OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBlueprint運用フローについては [https://wiki.openstack.org/wiki/Blueprints Blueprints] を参照してください。 | OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBlueprint運用フローについては [https://wiki.openstack.org/wiki/Blueprints Blueprints] を参照してください。 | ||
Line 20: | Line 83: | ||
|- | |- | ||
| ''Specification'' | | ''Specification'' | ||
− | | [wiki.openstack.org Wiki]に[[#Specification|新規ページを作成]]し、そのURLを指定します。 | + | | [https://wiki.openstack.org/wiki Wiki]に[[#Specification|新規ページを作成]]し、そのURLを指定します。 |
|- | |- | ||
| ''Summary'' | | ''Summary'' | ||
Line 26: | Line 89: | ||
|- | |- | ||
| ''Assignee'' | | ''Assignee'' | ||
− | | | + | | 空欄で構いません(担当者が決まっていれば入力) |
|- | |- | ||
| ''Drafter'' | | ''Drafter'' | ||
Line 48: | Line 111: | ||
Specificationは日本語でOKとします。 | Specificationは日本語でOKとします。 | ||
フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください。 | フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください。 | ||
+ | |||
+ | |||
+ | = Bugs = | ||
+ | OpenStackのBug運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBug運用フローについては [https://wiki.openstack.org/wiki/Bugs Bugs] を参照してください。 | ||
+ | |||
+ | == Bugs lifecycle == | ||
+ | * [https://bugs.launchpad.net/python-rack Launchpad]にてbugを起票します。 | ||
+ | * bugの再現性が確認されたら、[https://launchpad.net/~rack-drivers RACK Drivers]のメンバーはImportanceを決定し、Statusを''Confirmed''に変更します。 | ||
+ | * パッチをGerritにプッシュすると、Statusが''In progress''となり、パッチ投稿者がAssigneeとなります。 | ||
+ | * パッチがマージされると、Gerritにより自動的にStatusが''Fix Commited''に変更されます。 | ||
+ | |||
+ | == Register bug == | ||
+ | Launchpad上の記述は全て英語とします。 | ||
+ | bugを起票するときは、以下に従ってください。 | ||
+ | |||
+ | {| border="1" | ||
+ | | ''Summary'' | ||
+ | | bugの内容を簡潔に記載します。 | ||
+ | |- | ||
+ | | ''Further information'' | ||
+ | | バグの内容を詳細に記載します。説明が長くなるようであれば、[[#Specification]]と同じようにWikiを作ってリンクを貼ってもいいかもしれません。 | ||
+ | |- | ||
+ | | ''This bug contains information that is'' | ||
+ | | ''Public''にしてください。 | ||
+ | |- | ||
+ | | ''Extra options'' | ||
+ | | 記載不要です。 | ||
+ | |} |
Latest revision as of 07:33, 9 June 2015
Contents
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文字以内とする
- 2行目は空白行とする
- 最終行はblueprintもしくはbugのリンクを記載する
- 各行の末尾に空白が入らないようにする
例:
Adds a new api <blank line> Long multiline description of the change ... <blank line> 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を起票するときは、以下に従ってください。
Name | 他のblueprintと区別できるハイフン付き文字列 (ex. api-to-create-process) |
Title | このBlueprintで何をするのかを簡潔に説明する文字列 (ex. Create API to create processes) |
Specification | Wikiに新規ページを作成し、そのURLを指定します。 |
Summary | 1~2行でいいので、英語で簡潔な説明を記述してください。 |
Assignee | 空欄で構いません(担当者が決まっていれば入力) |
Drafter | Blueprintを起票した人の名前が自動で入ります。 |
Approver | 空欄で構いません。 |
Definition Status | Newにしてください。 |
Propose for sprint | (nothing selected) のままにしてください。 |
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を起票するときは、以下に従ってください。
Summary | bugの内容を簡潔に記載します。 |
Further information | バグの内容を詳細に記載します。説明が長くなるようであれば、#Specificationと同じようにWikiを作ってリンクを貼ってもいいかもしれません。 |
This bug contains information that is | Publicにしてください。 |
Extra options | 記載不要です。 |