👏

初めてOSSにコミットした話

2024/01/31に公開

概要

正月に人生で初めてOSSにコミットしました。
その経緯と実際にやったことについて書いていきます。

経緯

2023年末に仕事以外のことに関する2024年の目標を立てました。
その中の1つが「OSSへコミットすること」でした。
そんな中、 Vue の日本語ドキュメントのメンテナーの方が Vue3.4 のリリースに伴う翻訳を募集するポストをしているのを発見しました。
https://twitter.com/shindy_JP/status/1740595850848698535?ref_src=twsrc^tfw|twcamp^tweetembed|twterm^1740595850848698535|twgr^f3c4f8b444db1d6e4a52762dacf57d008ef38529|twcon^s1_&ref_url=https%3A%2F%2Fpublish.twitter.com%2F%3Fquery%3Dhttps3A2F2Ftwitter.com2Fshindy_JP2Fstatus2F1740595850848698535widget%3DVideo
善は急げということで、正月早々やり方を調べて取り組んでみました。

やったこと

Vue の日本語ドキュメントのリポジトリにコミットしました。
https://github.com/vuejs-translations/docs-ja

作業の流れやルールは翻訳ガイドに沿って実施しました。
https://github.com/vuejs-translations/docs-ja/blob/main/.github/CONTRIBUTING.md

以下、上記翻訳ガイドの GitHub Issues にある 本家ドキュメントの差分更新 の項目の 1 〜 11 に沿って、実際に私が実施したことを記述しています。

1. GitHub Issues から、このクエリー でソート & フィルターして、アサインされていない issues 一覧からできるだけ古いものからやりたい issue を選択します

翻訳募集のラベルがついているのでやりたい issue を選択しました。

2. 選択した issue で、「対応します!」などのコメントで宣言します

対応します!と宣言しました。

3. このリポジトリー vuejs-translations/docs-ja のメンテナーから同 issue でリアクションされたら、自分が選んだ issue の担当者として正式にアサインされたことになります

翌日、メンテナーから返信をいただき、正式アサインされました。

4. このリポジトリーをフォークします!

GitHubの右上の方のボタンからフォークできました。

GitHub Docs に詳細な手順は書いてあります。https://docs.github.com/ja/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo#forking-a-repository

5. main ブランチからトピックブランチを作成します: git branch my-topic-branch main

明確なブランチ名のルールはなさそうだったので、他の方のブランチ名を真似して issue-1751 というブランチ名でブランチを作成しました。

6. 変更をコミットします: git commit -am 'docs: fix typo'

対応する issue に紐づいた英語ドキュメントの変更内容を確認し、日本語ドキュメントのリポジトリの同様の箇所を同じ内容になるように書き直しました。

今回の issue では以下の対応が必要でした。

  • 引数の追加
  • 追加されたコメントを日本語翻訳して反映

対応内容詳細

引数の追加

これは日本語を含まないのでコピペで完了

実際対応した内容は以下

追加されたコメントを日本語翻訳して反映

// full props passed as 2nd argument in 3.4+

バージョン3.4以降、全ての props を第2引数では受け取れるということが書かれていそうです。
ただし、ドキュメント上で明確にどのように使うか明記されていなかったので念の為 CHANGELOG を確認し、該当の PRissue を確認しました。
認識齟齬がなさそうだったため ChatGPT に相談しつつ、既存のドキュメント内の似たような日本語翻訳文を参考にして翻訳しました。
また、書き方に関するルールや注意事項は README に記載されていたのでそれに従いました。

実際対応した内容は以下

7. textlint で引っかかる場合は再度修正を行いコミットします

引っかかりませんでした。

8. フォークした自分のリポジトリーに Push します: git push origin my-topic-branch

書いてある通り Push しました。

9. 問題がなければ、プルリクエストを vuejs-translations/docs-ja の main ブランチに送ります

PR を作成するだけで特別なことはありませんでした。
今回出したPR

10. レビューで指摘事項があったら修正 + Push し、再レビュー依頼( 🔄 ボタン)します

今回は指摘が発生しませんでした。

11. レビューで OK ならば、マージされてドキュメントに反映されます 🎉

数時間後、無事マージされました🎉

感想

  • お世話になっている OSS である Vue に少しでも貢献できてよかったです
  • OSS へのコミットに対してハードルを感じていましたが、初めてでも翻訳は取り組みやすいと思いました
  • 継続して今後も OSS 活動していきたいと思いました(引き続き翻訳も、それ以外も)

Discussion