- リンクを取得
- メール
- 他のアプリ
この投稿は私の現在所属しているスターフェスティバル株式会社のスターフェスティバル Advent Calendar 2022の7日目記事になります。
昨日はyui_tangさんによる機械学習でメタルかそうでないかを聞き分ける自作アプリの紹介でした!面白かったので是非読んでみてください!
https://zenn.dev/stafes_blog/articles/89a29ade69ec6d
こんにちは!k1rntです。
今回はGoogle OSSにissueを出しPRの作成、マージまでの経緯をお話しできればと思います。
なぜやろうと思ったのか
つい先日GitHub Actionsのsave-stateとset-outputコマンドが廃止になるという速報が社内Slackに投稿されました
こちらですね。
社内のリポジトリのGithub Actionsでも結構set-outputは使われていることもあり自分も書いていました。
そんな中弊社、ikkitangからこんな一言が!
そう感じた私はひとまずGoogle OSSのGitHubでset-outputが使われていないか検索をしてみることにしました。
OSSコミットチャンス
Google OSSを検索するとset-outputを使用しているリポジトリが多々ありました。
その中でも一度使ったことあるgo-githubも対象に含まれていたのでこちらに貢献することを決めました。
CONTRIBUTING.mdを読む
まずどのように貢献したら良いかは大抵CONTRIBUTING.mdといったファイルがあるはずなので読みます。
今回の場合こちら
これを読むとissueにて問題の報告PRにてパッチの提出を行えば良いことがわかります。
このドキュメントにはパッチの提出の際 go fmt の実行やテストを書く必要があると書かれていますが今回修正するファイルはGitHub Actionsなのでこれらは無視します。
issueを書く
OSSではissueだけでなくPRなども全て英語で書く必要がありますがdeepl等で翻訳したテキストを投下しても問題ないと思われます。
今回書いたissueはこちらになります。
リアクションがついて嬉しかったので皆さんも是非issueにもリアクションしていきましょう。
リポジトリをForkして作業
他社のリポジトリに貢献する際、通常はそのリポジトリをForkして作業を行います。
今回行った修正はこちらになります。
PRを提出
少しドキドキしながらPRの提出を行いました。
こちらはリンクから簡単に行えました。
CLAとは?
CLA は Contributor License Agreement (コントリビューター ライセンス契約) の頭文字であり、オープンソース プロジェクトの主体と、コードを提供する個人開発者あるいは企業との間で締結される契約を意味します。
変更リクエストがありました
丁寧にsuggestion機能でレビューを頂きました。
恥ずかしい> <
上記を治すと、
他にもWindowsでのJobでtestが落ちる、などが発生しました。
終わりに
Google OSSへの貢献は今回初めてだったのですが、gmlewisさんが非常に優しくレビューをして頂いたりリアクションがあったりと、とても勉強になり非常に良い体験ができました。
OSS貢献は敷居が高く感じられることも多々ありますが意外とやればすんなり出来るものです。
是非ここまで読んでいただいた皆さんも気軽にOSS貢献してみてください。
ありがとうございました!
明日は@delucciさんの記事になります!お楽しみに!
コメント
コメントを投稿