[インデックス 10319] ファイルの概要
このコミットは、Goプロジェクトの貢献者リストに新しい個人を追加するものです。具体的には、AUTHORS
ファイルと CONTRIBUTORS
ファイルに Rémy Oudompheng 氏の名前と連絡先情報を追加しています。これは、彼がGoプロジェクトへの貢献を開始するにあたり、個人の貢献者ライセンス契約 (CLA) を締結したことを示しています。
コミット
commit 5524b646e591b614391c1318e3eb9adc1d5af75b
Author: Russ Cox <rsc@golang.org>
Date: Wed Nov 9 15:59:57 2011 -0500
A+C: Rémy Oudompheng (individual CLA)
R=golang-dev
CC=golang-dev
https://golang.org/cl/5376045
GitHub上でのコミットページへのリンク
https://github.com/golang/go/commit/5524b646e591b614391c1318e3eb9adc1d5af75b
元コミット内容
A+C: Rémy Oudompheng (individual CLA)
R=golang-dev
CC=golang-dev
https://golang.org/cl/5376045
変更の背景
このコミットの背景には、オープンソースプロジェクトにおける貢献の管理と法的な側面があります。Goプロジェクトのような大規模なオープンソースプロジェクトでは、外部からのコード貢献を受け入れる際に、貢献者ライセンス契約 (CLA: Contributor License Agreement) の締結を求めることが一般的です。CLAは、貢献されたコードの著作権がプロジェクトの所有者(この場合はGoogle)に移譲されるか、またはプロジェクトがそのコードを自由に利用、配布、変更できるようなライセンスが付与されることを保証するための法的な合意文書です。
Rémy Oudompheng 氏がGoプロジェクトに貢献を開始するにあたり、個人のCLAを締結したため、その事実をプロジェクトの公式な貢献者リストに反映させる必要がありました。これにより、彼の将来の貢献が法的に適切に扱われる基盤が整えられます。
前提知識の解説
AUTHORSファイルと CONTRIBUTORSファイル
多くのオープンソースプロジェクトでは、プロジェクトに貢献した人々を記録するために、AUTHORS
や CONTRIBUTORS
といったファイルがリポジトリ内に存在します。
AUTHORS
ファイル: 主にプロジェクトの主要な作者や、初期の貢献者、あるいは著作権の帰属先となる個人や団体をリストアップするために使用されます。法的な意味合いが強い場合があります。CONTRIBUTORS
ファイル: プロジェクトに何らかの形で貢献したすべての個人をリストアップするために使用されます。コードの貢献だけでなく、ドキュメントの作成、バグ報告、テスト、デザインなど、幅広い貢献が含まれることがあります。
これらのファイルは、プロジェクトの透明性を高め、貢献者への感謝を示す役割も果たします。
貢献者ライセンス契約 (CLA: Contributor License Agreement)
CLAは、個人または企業がオープンソースプロジェクトにコードやその他のコンテンツを貢献する際に、プロジェクトの所有者(または管理団体)との間で締結する法的な契約です。主な目的は以下の通りです。
- 著作権の明確化: 貢献されたコードの著作権が誰に帰属するかを明確にします。これにより、将来的な著作権紛争を防ぎます。
- ライセンスの保証: プロジェクトが貢献されたコードを、プロジェクト自身のライセンス(例: Apache License, MIT Licenseなど)の下で自由に利用、配布、変更できることを保証します。これにより、プロジェクトの継続的な開発と配布が可能になります。
- 法的な保護: プロジェクトの所有者が、貢献されたコードに関する潜在的な法的問題(例: 著作権侵害)から保護されることを助けます。
CLAには「個人CLA (Individual CLA)」と「企業CLA (Corporate CLA)」の2種類があります。個人CLAは個人が自身の名義で貢献する場合に、企業CLAは企業が従業員の貢献を代表して行う場合に適用されます。Goプロジェクトでは、Googleがプロジェクトの所有者であり、貢献者にはCLAの締結を求めています。
技術的詳細
このコミットは、Goリポジトリ内の2つのテキストファイル、AUTHORS
と CONTRIBUTORS
に新しい行を追加する非常にシンプルな変更です。
-
AUTHORS
ファイルへの追加:Rémy Oudompheng <oudomphe@phare.normalesup.org>
この行は、Rémy Oudompheng 氏の名前と、彼が所属する機関のメールアドレス(おそらく学術機関)を示しています。 -
CONTRIBUTORS
ファイルへの追加:Rémy Oudompheng <oudomphe@phare.normalesup.org> <remyoudompheng@gmail.com>
こちらのファイルには、同じくRémy Oudompheng 氏の名前と、学術機関のメールアドレスに加えて、個人のGmailアドレスも追加されています。これは、連絡先の多様性や、貢献者が複数のメールアドレスを持つ場合に対応するためと考えられます。
変更は既存のリストのアルファベット順に挿入されており、ファイルの整合性が保たれています。
コアとなるコードの変更箇所
diff --git a/AUTHORS b/AUTHORS
index 8b543b40af..5f792fab68 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -141,6 +141,7 @@ Peter Williams <pwil3058@gmail.com>
Pieter Droogendijk <pieter@binky.org.uk>
Quan Yong Zhai <qyzhai@gmail.com>
Raif S. Naffah <go@naffah-raif.name>
+Rémy Oudompheng <oudomphe@phare.normalesup.org>
Risto Jaakko Saarelma <rsaarelm@gmail.com>
Robert Hencke <robert.hencke@gmail.com>
Roger Pau Monné <royger@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 77c514d127..ca3f03908f 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -211,6 +211,7 @@ Pieter Droogendijk <pieter@binky.org.uk>
Quan Yong Zhai <qyzhai@gmail.com>
Raif S. Naffah <go@naffah-raif.name>
Raph Levien <raph@google.com>
+Rémy Oudompheng <oudomphe@phare.normalesup.org> <remyoudompheng@gmail.com>
Risto Jaakko Saarelma <rsaarelm@gmail.com>
Rob Pike <r@golang.org>
Robert Griesemer <gri@golang.org>
コアとなるコードの解説
上記のdiffは、AUTHORS
ファイルと CONTRIBUTORS
ファイルに対する変更を示しています。
--- a/AUTHORS
と+++ b/AUTHORS
は、AUTHORS
ファイルの変更前と変更後を示します。@@ -141,6 +141,7 @@
は、変更がファイルの141行目から始まり、変更前は6行、変更後は7行になることを示しています。これは1行が追加されたことを意味します。+Rémy Oudompheng <oudomphe@phare.normalesup.org>
の行は、AUTHORS
ファイルに新しく追加された内容です。- 同様に、
--- a/CONTRIBUTORS
と+++ b/CONTRIBUTORS
はCONTRIBUTORS
ファイルの変更を示し、+Rémy Oudompheng <oudomphe@phare.normalesup.org> <remyoudompheng@gmail.com>
の行が追加された内容です。
この変更は、Goプロジェクトの貢献者管理プロセスの一部であり、Rémy Oudompheng 氏が正式にプロジェクトの貢献者として認識されたことを記録するものです。
関連リンク
- GoプロジェクトのCLAに関する情報(一般的な情報源として):
- https://golang.org/cl/5376045 (コミットメッセージに記載されているGoのコードレビューシステムへのリンク)
- https://cla.developers.google.com/ (GoogleのCLAに関する公式ページ)
参考にした情報源リンク
- GoプロジェクトのGitHubリポジトリ: https://github.com/golang/go
- 一般的なオープンソースプロジェクトにおけるCLAの概念に関する知識。
- Gitのdiff形式に関する一般的な知識。