koheitakahashiのブログ

2020.07.01にプログラマーとして生を受けた私が学んだことや、日常について徒然に書いていきます。

初めてOSSにPRを送りマージされました

はじめに

毎日コツコツとFJORD BOOT CAMPで勉強を続けておりますが、ある日、以下のQiitaの記事を拝見しました👀

qiita.com

東京都のコロナ対策サイトがOSSで運用されているのは知っていたのですが、恥ずかしながら、全国的にその動きが広まっていることは知らずに、上記の記事を読んで初めて知った次第です。

福島県にはご縁があり、お世話になっておりました。 そこで、プログラミングを少しかじっただけではありますが、何か力になれることがあるなら、力になりたいと思いました。 福島県の非公式のコロナ対策サイト(今のところ公式で出しているサイトはないため、有志の方が運営されている)で易しそうなissueを見つけ、以下のPRを送ってみました。

github.com

初めてのPRで緊張しましたが、レビュワーの方がとても優しく、無事マージもされたため、気をつけたことなど、記念のブログとして残したいと思います。

PRを送る上で気をつけたこと

プロジェクトのルールをしっかり読む

今回、私がPRを送ったプロジェクトは以下のように貢献の方法が日本語で丁寧に記載されていたため、しっかり読みました。

プロジェクトごとに異なるところだと思うので、しっかりと把握し、それに沿ってissueを進めていきました。

github.com

また、過去のPRなどを拝見し、PRやコミットメッセージは日本語か英語どちらで書けば良いのかも把握しました。過去のPRでは、PRのタイトルやコミットメッセージは英語が多く使われており、PRの説明文などは日本語が多く使われていたため、それに従いました。

DraftPRを作成し、そこに作業したコミットを積んでいき、issueに取り組んでいることを伝える

これは、上記のプロジェクトのルールに書いてあったことですが、issueに取り組む前に「取り組みます」と伝えて、初めに空のコミットをして、DraftPRを作成しました。

そして、そこに1日ごとに作業ログのような感じでコミットを積み上げていきました。

そうすることで、このissueに取り組んでいることが分かり、他のコントリビューターの方が動きを把握しやすくなり、「このissueは進められているのか?」などと余計な心配をしなくても良くなると思います。

私は人に見せる時のコミットログは、自分の作業ログではいけないと思うので、最終的に、本PRにする時はgit rebase -iでコミットを作業単位ではなく、意味ごとに分けるようにしています。

今回も、DraftPRの段階は作業ログのようにコミットログを積み重ねて、本PRは整理して提出しました(とは言っても、今回はそこまで大きいPRではなかったため、そこまで整理したわけではないですが)。

スクリーンショットを挿入

自分はあまり文章力に自信がないので、スクリーンショットを挿入するようにしています。 今回のPRでも説明にスクリーンショットを挿入しました。また、PR上でのやりとりでも、スクリーンショットを使って、相手の方が少しでも自分の状態を分かりやすくなれば良いと心がけました。

File Changedはしっかり確認する

これは、FJORD BOOT CAMPで何度もご指摘をいただいたところなのですが、他の方にレビューをお願いする前に、必ずGitHub上でFile Changedを確認するようにしています。

テキストエディタ上では気づかなかった修正点がある場合も少なくないため、ここはしっかり確認するようにしています。

最後に

初めてOSSにPRを出してマージされましたが、とても嬉しいです😆

そこまでプログラミングができるわけではない自分でも、できることがあって、小さなことかもしれませんが、誰かの役に立つことができたということが嬉しいです。

また、まだ自分はエンジニアという職に就けてはいませんが、エンジニアという職業はこのようにして社会問題に関わることができるという点も素晴らしいと思いました。 そのため、日頃から社会の流れや問題についてもキャッチしていかなければと思いました💪。