[インデックス 10115] ファイルの概要
このコミットは、Go言語プロジェクトへの新しい貢献者であるJongmin Kim氏を公式に AUTHORS および CONTRIBUTORS ファイルに追加するものです。これは、彼が個人のContributor License Agreement (CLA) に署名したことを示しており、オープンソースプロジェクトにおける貢献の正規化プロセスの一環です。
コミット
commit 9611d12b7e9b945099c18b1144a90aec7b849686
Author: Brad Fitzpatrick <bradfitz@golang.org>
Date: Wed Oct 26 11:17:48 2011 -0700
C+A: add Jongmin Kim (individual CLA)
R=golang-dev, rsc, iant
CC=golang-dev
https://golang.org/cl/5312057
---
AUTHORS | 1 +
CONTRIBUTORS | 1 +
2 files changed, 2 insertions(+)
diff --git a/AUTHORS b/AUTHORS
index bd9cc0cc64..91329b56b7 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -89,6 +89,7 @@ Joe Poirier <jdpoirier@gmail.com>
John Asmuth <jasmuth@gmail.com>
Jonathan Mark <jhmark@xenops.com>
Jonathan Wills <runningwild@gmail.com>
+Jongmin Kim <atomaths@gmail.com>
Jose Luis Vázquez González <josvazg@gmail.com>
Josh Goebel <dreamer3@gmail.com>
Jukka-Pekka Kekkonen <karatepekka@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 36e2a86c62..151cdca653 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -140,6 +140,7 @@ John DeNero <denero@google.com>
Jonathan Allie <jonallie@google.com>
Jonathan Mark <jhmark@xenops.com> <jhmark000@gmail.com>
Jonathan Wills <runningwild@gmail.com>
+Jongmin Kim <atomaths@gmail.com>
Jos Visser <josv@google.com>
Jose Luis Vázquez González <josvazg@gmail.com>
Josh Goebel <dreamer3@gmail.com>
GitHub上でのコミットページへのリンク
https://github.com/golang/go/commit/9611d12b7e9b945099c18b1144a90aec7b849686
元コミット内容
C+A: add Jongmin Kim (individual CLA)
R=golang-dev, rsc, iant
CC=golang-dev
https://golang.org/cl/5312057
変更の背景
このコミットの背景には、オープンソースプロジェクト、特にGoogleが主導するGo言語のような大規模プロジェクトにおける知的財産権の管理と貢献の正規化という重要な側面があります。
多くのオープンソースプロジェクトでは、プロジェクトのコードベースに貢献する開発者に対して、Contributor License Agreement (CLA) の署名を求めることがあります。CLAは、貢献されたコードがプロジェクトのライセンスの下で配布されることを許可し、プロジェクトがそのコードを将来的に利用、変更、再ライセンスする権利を保証するための法的な合意書です。これにより、プロジェクトは将来的な著作権に関する紛争や法的問題を回避し、コードベースの健全性と持続可能性を確保することができます。
このコミットは、Jongmin Kim氏がGoプロジェクトに貢献するにあたり、個人のCLAに署名したことを受けて行われました。CLAの署名が完了したことで、彼の貢献が正式にプロジェクトに組み込まれる準備が整い、その第一歩として彼の名前がプロジェクトの AUTHORS および CONTRIBUTORS リストに追加されました。これは、プロジェクトの透明性と、貢献者への適切なクレジット付与を保証するプロセスの一部でもあります。
前提知識の解説
AUTHORS ファイルと CONTRIBUTORS ファイル
オープンソースプロジェクトにおいて、AUTHORS
ファイルと CONTRIBUTORS
ファイルは、プロジェクトに貢献した人々を記録するための一般的な慣習です。
- AUTHORS ファイル: 通常、プロジェクトの主要な作者や、コードベースの大部分を執筆した人々、あるいはプロジェクトの初期段階から関わっている人々をリストアップします。これは、プロジェクトの「創始者」や「主要な貢献者」を示すことが多いです。
- CONTRIBUTORS ファイル: より広範な意味で、プロジェクトに何らかの形で貢献したすべての人々をリストアップします。これには、コードの提出者だけでなく、バグ報告者、ドキュメントの改善者、テストの作成者、翻訳者など、様々な形の貢献者が含まれることがあります。このファイルは、プロジェクトの成功に寄与したコミュニティ全体の努力を認識するために使用されます。
これらのファイルは、プロジェクトの歴史と貢献者を追跡し、適切なクレジットを付与するために重要です。
Contributor License Agreement (CLA)
CLA(Contributor License Agreement)は、オープンソースプロジェクトにコードやその他のコンテンツを貢献する個人または団体と、プロジェクトの所有者(またはプロジェクトをホストする組織)との間で締結される法的な契約です。
CLAの主な目的は以下の通りです。
- ライセンスの明確化: 貢献されたコードがプロジェクトのライセンス(例: Apache License, MIT License, GPLなど)の下で配布されることを明確に許可します。
- 著作権の保証: 貢献者が提出するコードの著作権を所有していること、またはそのコードを貢献する権利を持っていることを保証します。これにより、プロジェクトは将来的に著作権侵害の訴訟から保護されます。
- 再ライセンスの柔軟性: プロジェクトが将来的にライセンスを変更する必要が生じた場合(例えば、より寛容なライセンスに移行する場合など)に、貢献されたコードを新しいライセンスの下で再ライセンスする権利をプロジェクトに与えることがあります。これは、特に企業が主導するプロジェクトで重要です。
- 知的財産権の管理: プロジェクトの知的財産権を適切に管理し、プロジェクトの長期的な持続可能性と法的健全性を確保します。
CLAには、個人が署名する「Individual CLA」と、企業や組織が署名する「Corporate CLA」の2種類があります。Go言語プロジェクトでは、Googleがプロジェクトをホストしているため、貢献者にはCLAの署名が求められます。
技術的詳細
このコミットは、Gitの差分(diff)として示されているように、2つのテキストファイル AUTHORS
と CONTRIBUTORS
にそれぞれ1行ずつ追加を行う非常にシンプルな変更です。
AUTHORS
ファイルは、Go言語プロジェクトの主要な作者を列挙しています。CONTRIBUTORS
ファイルは、Go言語プロジェクトに貢献したすべての個人を列挙しています。
変更は、Jongmin Kim氏の名前とメールアドレス (Jongmin Kim <atomaths@gmail.com>
) をそれぞれのファイルの適切なアルファベット順の位置に挿入するものです。これは、新しい貢献者がプロジェクトに正式に認識されたことを示す標準的な手順です。
Gitの index
行 (index bd9cc0cc64..91329b56b7 100644
) は、変更前と変更後のファイルのGitオブジェクトのハッシュと、ファイルのパーミッションを示しています。100644
は、通常のファイル(実行可能ではない)であることを意味します。
--- a/AUTHORS
と +++ b/AUTHORS
は、それぞれ変更前のファイル (a
) と変更後のファイル (b
) を示しています。
@@ -89,6 +89,7 @@
の行は、変更がファイルの89行目から始まり、変更前は6行、変更後は7行になることを示しています。これは、1行が追加されたことを意味します。
コアとなるコードの変更箇所
diff --git a/AUTHORS b/AUTHORS
index bd9cc0cc64..91329b56b7 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -89,6 +89,7 @@ Joe Poirier <jdpoirier@gmail.com>
John Asmuth <jasmuth@gmail.com>
Jonathan Mark <jhmark@xenops.com>
Jonathan Wills <runningwild@gmail.com>
+Jongmin Kim <atomaths@gmail.com>
Jose Luis Vázquez González <josvazg@gmail.com>
Josh Goebel <dreamer3@gmail.com>
Jukka-Pekka Kekkonen <karatepekka@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 36e2a86c62..151cdca653 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -140,6 +140,7 @@ John DeNero <denero@google.com>
Jonathan Allie <jonallie@google.com>
Jonathan Mark <jhmark@xenops.com> <jhmark000@gmail.com>
Jonathan Wills <runningwild@gmail.com>
+Jongmin Kim <atomaths@gmail.com>
Jos Visser <josv@google.com>
Jose Luis Vázquez González <josvazg@gmail.com>
Josh Goebel <dreamer3@gmail.com>
コアとなるコードの解説
上記の差分は、AUTHORS
ファイルと CONTRIBUTORS
ファイルの両方に、以下の行が追加されたことを示しています。
+Jongmin Kim <atomaths@gmail.com>
これは、Jongmin Kim氏がGo言語プロジェクトの公式な貢献者として認識され、彼の名前と連絡先(メールアドレス)がプロジェクトの記録に追加されたことを意味します。この変更は、彼がプロジェクトにコードを提出する法的権利と、その貢献がプロジェクトによって適切にクレジットされることを保証するCLAプロセスが完了した後にのみ行われます。
このコミット自体はコードの機能的な変更を含まず、プロジェクトのメタデータと管理に関するものです。しかし、オープンソースプロジェクトの健全な運営と法的な側面において非常に重要な役割を果たします。
関連リンク
- GitHub上のコミットページ: https://github.com/golang/go/commit/9611d12b7e9b945099c18b1144a90aec7b849686
- Gerrit Change-ID:
https://golang.org/cl/5312057
- このリンクは、Go言語プロジェクトがコードレビューに利用しているGerritシステムにおける変更セット(Change-ID)を指しています。Gerritは、Gitリポジトリと連携して、コードの変更をレビューし、承認するためのウェブベースのツールです。Goプロジェクトでは、GitHubへのプッシュの前に、Gerritで全ての変更がレビューされます。このリンクは、Jongmin Kim氏のCLA追加に関する具体的なレビュープロセスと議論を追跡するためのものです。
参考にした情報源リンク
- Contributor License Agreement (CLA) について:
- https://cla.developers.google.com/ (Google Developers CLAページ)
- https://opensource.google/docs/cla/ (Google Open Source - CLAに関するドキュメント)
- Gerrit Code Review について:
- https://www.gerritcodereview.com/ (Gerrit Code Review 公式サイト)
- https://go.dev/doc/contribute#gerrit (Go言語プロジェクトの貢献ガイドライン - Gerritに関するセクション)
- Go言語プロジェクトの貢献ガイドライン:
- https://go.dev/doc/contribute (Go言語プロジェクトへの貢献方法に関する公式ドキュメント)
- https://go.dev/doc/contribute#cla (Go言語プロジェクトのCLAに関する具体的な説明)