GitHubが公開してるオープンソースガイドライン、まとめてみた。

公開:2020/10/10
更新:2020/10/10
2 min読了の目安(約2300字TECH技術記事

なぜオープンソースを始めるか?

これはとても素晴らしいなと思いました。ぜひ原文を読んで欲しいです。
https://opensource.guide/ja/starting-a-project/

オープンソースプロジェクトを始めるのに必要なドキュメント

  1. オープンソースライセンス
  2. README
  3. コントリビュートのガイドライン
  4. 行動規範

1. オープンソースライセンス

他の人が安心して、コードを使えるようにライセンスを選びます。
例えば、自分はWordPressのプラグインを作ったりしているのですが、WordPressのプラグインのライセンスは、GPL互換である必要があります。なのでライセンスが無いライブラリはプラグインには使えません。

ライセンスの選び方

下のライセンスが一般的です。

ライセンス 許可 使用条件 禁止
MIT 商用利用、再配布、修正 ライセンス全文・著作権表示明記*1 作成者の責任・保証免除
Apache 2.0 商用利用、再配布、修正、特許目的の利用 ライセンス全文・著作権表示明記 商標の使用禁止、作成者の責任・保証免除
GPLv3 商用利用、再配布、修正、特許目的の利用 再配布時の公開義務、再配布時に同じライセンスで公開、ライセンス全文・著作権表示明記、修正箇所を明記 作成者の責任・保証免除

*1コピー物にライセンス全文(URL可)・著作権表示を明記する。

詳しくは下記のURLを参照下さい。
https://qiita.com/tukiyo3/items/58b8b3f51e9dc8e96886
https://developer.cybozu.io/hc/ja/articles/360017821071
https://choosealicense.com/licenses/

2. README を書く

以下を書く

  • このプロジェクトは何をするものなのか?
  • なぜこのプロジェクトは便利なのか?
  • どのようにして使い始められるのか?
  • もし必要な場合、どうやったら助けを得られるか?

READMEテンプレートを参考にして下さい。(英語)
https://github.com/PurpleBooth/a-good-readme-template

3. コントリビュートのガイドラインを書く

どのようにコントリビュートして欲しいかを書きましょう。例えば以下のような内容です。

  • バグレポートの登録の仕方
  • 新しい機能の提案の仕方
  • 環境のセットアップとテストの実行の仕方

Issueやプルリクのテンプレートの登録の仕方。(英語)
https://github.blog/2016-02-17-issue-and-pull-request-templates/

CONTRIBUTING.mdテンプレートを参考にして下さい。(英語)
https://github.com/nayafia/contributing-template/blob/HEAD/CONTRIBUTING-template.md

4. 行動規範を書く

行動規範には、参加者にどう振る舞ってほしいかや、違反した場合どうなるか、誰にいつその規範が適用されるかを書きます。

以下のテンプレート修正し、CODE_OF_CONDUCT.mdに貼り付けて下さい。
このテンプレートは、Kubernetes、Rails、Swift を含む、40,000以上のオープンソースプロジェクトで使われています。

(日本語)
https://www.contributor-covenant.org/ja/version/2/0/code_of_conduct/code_of_conduct.md

行動規範の違反が起きた場合の連絡先を追加

メールアドレスなどの、行動規範の違反が起きた際の連絡先を、CODE_OF_CONDUCT.md追加します。

例:

不正行為やハラスメント、受け入れられない行為は、 khmer-project@idyll.org にメールを送ることによって報告することが出来ます。このメールは、 C. Titus Brown と Michael R. Crusoe のみが受け取ります。彼ら二人のどちらかが関係する問題について報告する場合は、 NSF Center for Science and Technology の BEACON Center for the Study of Evolution in Action のダイバーシティディレクターの Judi Brown Clarke, Ph.D. にメールで報告して下さい。*

(英語)
https://github.com/dib-lab/khmer/blob/HEAD/CODE_OF_CONDUCT.rst

まとめ

GitHubが公開しているオープンソースガイドラインの中から、オープンソースプロジェクトを立ち上げうの必要なドキュメントを抜粋してまとめました。

より詳細を知りたい方は、下記のURLをご参考下さい。
https://opensource.guide/ja/