人生初! OSSでマージされたので時系列でまとめてみる
はじめに
年末から始めたOSSコントリビュートにてやっと人生初LGMT&マージされたので、それまでの試行錯誤を記録として残しておきたいと思いまとめてみます。
さて、前回「2024年OSSコントリビューターになるためのロードマップ」を書いたらたくさんの方々に読んでもらえたので今回はその続編です。
はじめてのマージされるまでの心理的なハードルが高いので、この記事でみなさんの背中を押せれば良いです。
1. Contributing.mdを読む
まずContributeするためのお約束を確認していきます。
多くのリポジトリはContributing.mdのような名前のファイルがルートディレクトリにありますので、それをDeepL片手に読んでいきます。
私が参加しているOSSは、長文ながら非英語話者でも読みやすいように平易な言葉かつ初心者ウェルカムでフレンドリーな表現でした。
読んでいるだけで「この人たちと一緒に作業できるかも!」とモチベーションが上がりました。
2. Issueを選ぶ・新しく立てる
OSS初心者は「Good first issue」から取り組むのがおすすめです!
が、今回私はすでに取り組みたいIssueがあり、それを過去のIssueから探しても見当たらなかったため、新しくIssueを作成しました。
Issueのフォーマットがあったのでそれに沿って作成し、開発者にpingしてお知らせしました。
3. ブランチを切ってCommitする
Issueを作成したので、Forkしたリポジトリからブランチを切って作業に入ります。
チーム開発に慣れている方は当たり前のことですが、後に自分のコードをレビューしてくれる人が分かりやすい形で、自分の作業をコミットして記録しておきます。
この作業が丁寧であれば、Pull Requestのマージに近づくことができます。
4. Pull Requestを作成する
さあ、コミットが整ったらPull Requestを作成しましょう。
こちらもContributing.mdに約束事が書いてあるので、こちらを見ながらルールやフォーマットに沿ってプルリクを作成していきます。
「プルリクエストはどれくらいの進捗で出したらよいのか?」
と疑問に思いますが、
「レーザーのようにピンポイントのプルリク」出すのが一番マージに近づけます。
ひとつのプルリクエストに解決したい問題がいくつもコミットされていると解決が遠くなりマージも遠くなってしまいます。
まずは「こんなことでプルリク出していいのかな?」レベルで出してみましょう。
私もこの方法で初マージしてもらえました。
5. Reviewerにpingする
Pull Requestを作成できたら、レビュワーとなっている人にpingしてレビューをもらいます。
相手をリスペクトする表現を使ってレビューをお願いしましょう。
活発なOSSの場合はすぐに返事が来ます。
6. FBに感謝を込めてFIXする
レビュワーからのFBに感謝を込めて修正します。こちらは早ければ早いほど良いです。
なぜなら、レビュワーは忙しいので時間が立ってしまうと、プルリクエストの内容を忘れてしまうからです。
FBをもらったら3日以内に修正Commitをしましょう。
7. LGTM & Meged
修正が承認されたらLGTMがもらえます!
はじめて海外エンジニアからもらったLGTMは感動的でした。
すぐにこのプルリクはマージされ、めでたくコントリビューターとなれました。
まとめ
Issue → Pull Request → Merged まで時系列でやったことをまとめてみました。
OSSコントリビュートのイメージしやすくなった!と思っていただけたら嬉しいです。
ここまで読んでいただきありがとうございました!
Happy Contributing👋
Discussion