貢献する
貢献のご検討ありがとうございます!支援にはたくさんの方法があります。
何に取り組むべきか
Screwdriver の全ての issue は、screwdriver repo にあります。私達が現在何に取り組んでいるかは、Screwdriver API repo の Projects にある digital scrum board をチェックしてください。どのリポジトリを変更すればよいか分からなければ、どこに貢献するかのドキュメントを参照してください。開発の指針に関しては、開発を開始するのドキュメントを確認してください。
貢献のための一般的なガイドライン
以下のようにお願いします。
- 取り組んでいる issues を更新してください
- issue の番号と feature をチャンネルのタイトルにして (例:
#911-subdirectory-support
) Slack のチャンネルを作成し、そこで議論してください - 該当する場合は、design doc も追加してください
プルリクエストを送る
バグ修正、機能追加、改善のパッチはプルリクエストとして受け付けています。以下は貢献する際の参考です。
- わかりやすいコミットメッセージを現在形で(Added XではなくAdd Xのように)書いてください!タイトルは短くし、本文には必要に応じて空行や箇条書きを使ってください。タイトルと箇条書きの先頭文字は大文字にしてください。タイトルに句読点は不要です。
- コードはリンターとスタイルチェックをパスする必要があります。
- すべての手順は文書化されている必要があります。READMEやこのガイドに説明を追加してください。
- コードカバレッジを上げバグの発生や再発を防ぐためにテストコードを含めてください。
- 機能追加/バグ修正ごとに変更をひとつのコミットにまとめてください。どのようにまとめればよいかわからないときはお問い合わせください。
- 可能であれば、プルリクエストに適切な Github のラベルを付けてください。
大掛かりな改善に取り組むときは、それがプロジェクトの目標に沿うものか確認するために事前にお声掛けください。
コミットメッセージのフォーマット
私達は semantic-release を利用しているので、 コミットメッセージは <type>(<scope>): <subject>
のフォーマットでなければいけません。
キーワード | 説明 |
---|---|
Type | feat (機能), fix (バグ修正), docs (ドキュメント), style (コードフォーマットや誤字脱字など), refactor, test (テスト追加), chore (雑多なメンテナンス作業) |
Scope | コミットの範囲を特定するもの。空白や関連する issue 番号、* でも構いません。 |
Subject | コミットの説明 |
重要: メジャーバージョンを更新する必要のある破壊的変更の際には、コミットメッセージのフッターに BREAKING CHANGE: <message>
を追加し、その前にスペースか改行を2文字入れてください。そしてコミットメッセージの残りの部分はその説明に使ってください。
コミットメッセージの例:
- バグ修正の場合:
fix: Remove extra space
- 破壊的変更の場合:
feat(1234): remove graphiteWidth option
BREAKING CHANGE: The graphiteWidth option has been removed.
The default graphite width of 10mm is always used for performance reasons.