もっと早くに知りたかった .github
リポジトリの効果
Twitterで知った超絶お役立ち情報。1週間前の自分に教えてあげたい…
.githubリポジトリ作ればorganization全体にpull request template等を全体適応できるのを知ったhttps://t.co/DNu5Falkae
— 1coin (@1coin178) October 13, 2020
元々リポジトリの中に.github
ディレクトリを作ると、そのリポジトリに対してPull Requestのテンプレートやissueのテンプレートを作ったりすることができる機能があるのは知っていました。
今回紹介するのは、その機能をさらに拡張させて.github
リポジトリを作成することで、アカウント全体(Organizationの場合はOrganization全体)にテンプレートの適用範囲を拡大する方法です。
このテクニックは知りませんでした。正確には「絶対あるに違いない」とは思って探したことはあるのですが、探しきれずに諦めていました。
公式のドキュメントは以下参照ください。
ポイントは以下です。
-
.github
リポジトリのPR, issue, Contributionのテンプレートがアカウント全体(Organization全体)に適用できる - リポジトリに
.github
ディレクトリで別のテンプレートが設定されている場合は、.github
リポジトリのテンプレートより、各リポジトリの.github
ディレクトリのテンプレートが優先される -
.github
リポジトリはpublic設定にする必要がある
使い方としては、.github
リポジトリにアカウント全体(Organization)のデフォルトとなるようなテンプレートを作成。そこから外れるようなテンプレートを使いたい場合は、各リポジトリで.github
ディレクトリ作って設定個別設定するという使い方になると思います。
.github
リポジトリを公開設定にしないといけないのは、要注意ポイントです。会社で、外部に公開せずにOrganizationを使っていて、テンプレートを外に公開したくない場合は使えないですね。OSSの開発をしていてContribution
の仕方などを外に公開することを想定した仕様なのだと思います。
.github
リポジトリを作ってみた
作ってみたリポジトリは以下です。
作り方は、普通に.github
というリポジトリを新規作成するだけです。最初に.
があるのが少し不安ですが、普通に作れます。
とりあえず、PRのテンプレートを作ってみました。
## Purpose
Purpose of Pull Request
## Effect
Effect of Pull Request
## Test
Test command
## Test Environment
### Hardware
ex: PC(Windows) / PC(Mac) / Raspberry Pi/ Jetson Nano
### Software(Library)
ex: TensorFlow==1.15.3...
## Memo
参考:Pull Request のフォーマットを決めるとレビューの効率が3倍よくなる
これを適用した状態で、自分のアカウントで新たなリポジトリ作って、試しに自分でPRしてみました。
先ほど設定したPRのテンプレートが適用されています!
同じ要領で、issueのテンプレートなども設定できます。
まとめ
.github
リポジトリでPull Requestやissueのテンプレートをアカウント全体に適用する方法を紹介しました。たくさんリポジトリある人にとっては便利ですね。私も自分のリポジトリ100を超えているので、一気にデフォルトのテンプレートを設定できるのは助かりますね。
PRとかテンプレートを作成しておくと、PRする人も、レビューする人もポイントを抑えられるので、お互い手間が少し減るかもしれません。仕事でGitHubのOrganizationを使っている人とかにも便利そうですが、.github
リポジトリを公開(public)設定しないといけないのがネックですね。
頑張って100以上のリポジトリにテンプレートを追加しようとしている人のために書きました。他に、オススメのPRやissueのテンプレートありましたら是非おしえてください。
関連記事