DroidKaigi 2020のアプリをGitHubで公開しました
DroidKaigi 2020アプリのリーダーをしているtakahiromです。
DroidKaigiはエンジニアが主役のAndroidカンファレンスです。
Android技術情報の共有とコミュニケーションを目的に、2020年2月20日(木)、21日(金)の2日間開催します。
DroidKaigiではカンファレンスで利用するアプリをオープンソースで開発しています。アプリの開発に貢献するコントリビューターを大きく歓迎しています。
公開して1週間程度になりますが、初めてオープンソースに貢献する方から、熟練のAndroidアプリのエンジニアの方まで、すでに100人以上のコントリビューターに参加していただけていることを嬉しく思っています。
この記事では、興味はあるけどやり方が分からないという方向けに、簡単なコントリビューションのためのガイドを掲載します。Androidエンジニアや興味があるみなさんがオープンソース開発に参加してみる最初のいい機会になるのではと考えています。
まずはDeployGateから開発中のDroidKaigiアプリをインストールしてどんなアプリか確かめてみましょう。
簡単なコントリビューションガイド
1. DroidKaigiアプリはGitHubのIssueを利用しています。このIssueの中で、自分ができそうであったり、興味があるものを探します
welcome contributeタグが付いたIssue一覧
この中でもeasyタグが付いたIssue一覧は簡単にできるものが多いのでおすすめです。
※ 今できるIssueがない場合もあり、Issueは棚卸ししていくので、ちょくちょく確認するといいかもしれません。
2. 手をあげます 。I will try thisと書き込むか、 以下のように書き込むと手を上げている絵文字を書き込めるのでそれでもOKです 。
🙋 `:raising_hand:`
もしできなくても1日チャレンジしてダメだったら、 Give up!と書き込んでいただいて大丈夫です!
3. リポジトリをForkして、修正をそのForkしてリポジトリをcloneして、アプリをローカルに持ってきます。
Gitクライアントかコマンドでcloneします。
git clone https://github.com/[あなたのアカウント]/conference-app-2020
4. Android Studio 3.6でプロジェクトを開いて開発します。
5. コミット、プッシュして、GitHubのUIからプルリクエストを作成します。プルリクエストを作成しようとするとテンプレートが読み込まれるため、以下のように入力していきます。
・タイトル: Issueと同じものを入力してください。
・ Issue: ISSUE_NUMBERにIssue番号(Issueを開いた時にURLの最後に表示される番号)を入力します。こうするとプルリクエストのマージと同時にIssueもクローズされます。
・ Overview: Google翻訳でかまわないので(自分もよく使っています😭)かんたんな意味がわかりそうなプルリクエストの内容を入力します。
・ Link: 参考になるリンクがあれば入力します。
・ Screenshot: 前後の比較ができるスクリーンショットを貼っていただく形になります。アニメーションなど動きを伴うものは、画面録画をgifに変換したものを貼り付けると分かりやすくなります。
英語に関しては込み入った内容など、もし伝えられる自信がない内容でしたら日本語でもOKです 🙆
6. 作成が終わるとコードレビューが行われます。修正をお願いすることがあれば、差分にインラインコメントがつきますので適宜確認をしましょう。修正が完了したらマージされます。 👍
Issueにないけど、改善案がある方
Issueなしでプルリクエストを出していただいてもOKです。アプリの改善につながるので大変ありがたいです。
実装できなくても改善案やバグ報告などがあれば、Issueを作成していただけると大変助かります。Issueが枯渇しているため、今あるIssueは気にせず気軽にIssueを立てていただけると助かります。
この修正をプルリクエストしていいか不安であればIssueを立てて意見を聞いても良いと思います!
コントリビュートを楽しみ、多くのことを学び、知識を共有し、DroidKaigiを楽みましょう!