きっかけ
Ruby on Rails の GitHub プロジェクト(https://github.com/rails/rails) にあるドキュメントファイル内に、いくつかタイポがあることに気づきました。
赤線部の1つ「Depedencies」は、正しくは「Dependencies」ですね。
これらの誤記を修正しようと思いました。
本記事では Ruby on Rails の GitHub プロジェクトをサンプルに、プルリクエストを発行する方法を紹介していきます。
GitHub pull request 作成までの流れ
1. 貢献方法を確認
まずはコントリビュートする方法や注意点を確認します。
一般的には GitHub プロジェクトの README.md
と CONTRIBUTING.md
ファイルにコントリビュートに関する情報が記載されていますので、このファイルの内容を確認します。
Rails の GitHub プロジェクトの場合、どちらのファイルにも今回のケースに当てはまる内容の記載はありませんでした。
2. 既存のissueとpull requestを確認
次に、同じ内容の issue または pull request が存在するか確認します。
既存の issue : https://github.com/rails/rails/issues
既存の pull request : https://github.com/rails/rails/pulls
Open 状態の issue と pull request はどちらもそれなりの数ですので、検索欄に「typo」など適当に入力して、該当するものがないか確認します。
いくつかのワードで検索したところ、当該ファイルのタイポに関しては issue、pull request ともに存在しませんでした。
Close 状態の issue と pull request を検索すると、簡単なドキュメントの修正であれば、issue を立てずに pull request を発行しているようでした。
なので過去の pull request にならって、同じように pull request を作成しようと思います。
3. プルリクエスト用ブランチを新規作成
次に、pull request 用ブランチを新規作成します。
やり方は色々ありますが、今回はローカル PC 上で作成する方法を選択しました。
まず、Rails の GitHub プロジェクトの画面の「Fork」ボタンをクリックし、プロジェクトを Fork します。
Fork したプロジェクトの画面の「Code」ボタンをクリックし、画面に表示される内容をもとに git clone します。
次に、ローカル PC にて、 git clone したプロジェクトから適当な名前のブランチを新規作成し、そのブランチに変更内容を git push します。
タイポ修正ですので、ブランチ名は「fix-typo」として、修正内容を push しました。
4. プルリクエストを新規作成
git push 後、Rails の GitHub プロジェクトの画面を開くと、以下のように「Compare & pull request」というボタンが表示されます。このボタンをクリックします。
すると、pull request 作成画面に遷移します。
用意されているテンプレートや過去の pull request を参考に description を記入し、pull request を新規作成します。
https://github.com/rails/rails/pull/51433
数分後
pull request を発行してから数分でマージされました。早すぎる...
GitHub プロジェクト上の当該ファイルを確認すると、修正内容が反映されていることが分かります。
本記事執筆中に気づいたのですが、Railsにコントリビュートすると、Rails Contributorsというサイトにも掲載されるようです。