mnuカーネルは完全にオープンなプロジェクトであり、誰でも貢献することができます。 バグの報告、機能の提案、コードの改善、ドキュメントの更新など、どんな貢献も大歓迎です!
バグを見つけた場合や新しい機能を提案したい場合は、GitHubのIssuesセクションで新しいIssueを作成してください。 Issueには、問題の詳細な説明や再現手順、スクリーンショットなどの関連情報を含めると、問題の理解と解決がスムーズになります。 機能の提案の場合は、提案する機能の目的や利点、実装の概要などを詳しく説明してください。
コードを実際に書く貢献に必要な手順は以下の通りです:
- リポジトリをフォーク: まず、mnuカーネルのGitHubリポジトリを自分のアカウントにフォークしてください。
- ブランチを作成: フォークしたリポジトリで、新しいブランチを作成してください。ブランチ名は、変更内容を簡潔に表すものにしてください。
ブランチ名の命名規則です:
- バグの修正など:
fix/issue-123(例:fix/issue-123) ※かならずissueを作成してからブランチを作成してください。- 新機能の追加など:
feature/feature-name(例:feature/add-logging)- ドキュメントの更新など:
docs/xxxx(例:docs/update-docs)- その他の変更など:
other/xxxx(例:other/update-dependencies)
- 変更を加える: コード、ドキュメント、テストなど、必要な変更を加えてください。
- コミット: 変更をコミットしてください。コミットメッセージは、変更内容を簡潔に説明するものにしてください。
- プルリクエストを作成: フォークしたリポジトリのブランチから、mnuカーネルのstagingブランチに向けてプルリクエストを作成してください。
- プルリクエストの説明: プルリクエストの説明には、変更内容とその理由を詳しく記述してください。
プルリクエストが提出された後、メンテナがコードをレビューし、必要に応じてフィードバックを提供します。 フィードバックに基づいて変更を加え、プルリクエストを更新してください。
問題がなかったり、フィードバックがすべて解決された場合、プルリクエストはマージされます。
また、コードを書く際やブランチを切る際は以下のルールに従ってください:
- 提出前に必ず
cargo fmtでフォーマットしてください。 - 一つのプルリクエストには、できるだけ一つの目的に関連する変更のみを含めるようにしてください。
- 変更内容が大きい場合は、複数の小さなプルリクエストに分割することを検討してください。
- 変更内容が大きい場合は、事前にIssueで変更内容を説明し、フィードバックをもらうことをおすすめします。