[インデックス 13713] ファイルの概要
このコミットは、GoプロジェクトのCONTRIBUTORS
ファイルに新しい貢献者「Alan Donovan」を追加するものです。
コミット
このコミットは、Goプロジェクトの貢献者リストにAlan Donovan氏を追加するものです。コミットメッセージの「A+C」は「Added + Corporate license」を意味し、Alan Donovan氏がGoogleの企業ライセンスの下で貢献していることを示しています。これは、オープンソースプロジェクトにおける貢献者の追跡と、知的財産権の管理において重要な側面です。
GitHub上でのコミットページへのリンク
https://github.com/golang/go/commit/11d75fb62ee5fa46d33845b768980060e837f9db
元コミット内容
commit 11d75fb62ee5fa46d33845b768980060e837f9db
Author: Robert Griesemer <gri@golang.org>
Date: Thu Aug 30 18:38:33 2012 -0700
A+C: added Alan Donovan (Google corporate license)
R=adg, bradfitz
CC=golang-dev
https://golang.org/cl/6490063
CONTRIBUTORS | 1 +
1 file changed, 1 insertion(+)
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 81580976f1..db288efe78 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -36,6 +36,7 @@ Abhinav Gupta <abhinav.g90@gmail.com>
Adam Langley <agl@golang.org>
Adrian O'Grady <elpollouk@gmail.com>
Akshat Kumar <seed@mail.nanosouffle.net>
+Alan Donovan <adonovan@google.com>
Albert Strasheim <fullung@gmail.com>
Aleksandar Dezelin <dezelin@gmail.com>
Alex Brainman <alex.brainman@gmail.com>
変更の背景
オープンソースプロジェクト、特にGoのような大規模なプロジェクトでは、貢献者リスト(CONTRIBUTORS
ファイルや類似のドキュメント)を正確に維持することが非常に重要です。これは、プロジェクトへの貢献を認識し、コミュニティの透明性を高め、そして最も重要なこととして、知的財産権の管理を適切に行うためです。
新しい貢献者がプロジェクトにコードを提出する際、その貢献がプロジェクトのライセンスと互換性があることを確認する必要があります。企業に所属する開発者が貢献する場合、その貢献が企業の知的財産ポリシーに準拠していることを示すために、企業ライセンスの下での貢献であることを明示することが一般的です。このコミットは、Alan Donovan氏がGoプロジェクトに貢献を開始した際に、その貢献がGoogleの企業ライセンスの下で行われていることを正式に記録するために行われました。
前提知識の解説
オープンソースプロジェクトにおける貢献者リスト
多くのオープンソースプロジェクトでは、プロジェクトに貢献した個人の名前と連絡先をリストアップしたファイル(通常はCONTRIBUTORS
、AUTHORS
、またはCREDITS
という名前)を保持しています。このリストは、プロジェクトの歴史とコミュニティの成長を示すだけでなく、法的な観点からも重要です。特に、著作権表示やライセンスの適用において、誰がどの部分に貢献したかを明確にすることは、将来的な紛争を避ける上で役立ちます。
企業ライセンスと貢献
企業に所属する開発者がオープンソースプロジェクトに貢献する場合、その貢献は通常、所属企業の知的財産ポリシーの対象となります。企業は、従業員が行った作業の著作権を保持することが多く、オープンソースプロジェクトへの貢献も例外ではありません。そのため、プロジェクト側は、企業からの貢献が適切なライセンスの下で行われていることを確認する必要があります。Goプロジェクトの場合、「A+C」という表記は、貢献者が企業(この場合はGoogle)のライセンス契約に基づいて貢献していることを示しており、プロジェクトがその貢献を法的に受け入れるためのメカニズムの一部となっています。
Gerrit (Code Review) と golang.org/cl
コミットメッセージにある https://golang.org/cl/6490063
は、Goプロジェクトがコードレビューに利用しているGerritシステムへのリンクです。Gerritは、Gitリポジトリ上でコードレビューを行うためのウェブベースのツールで、変更がマージされる前に複数の開発者によるレビューを強制することで、コード品質と一貫性を保証します。CL
は「Change List」の略で、Gerritにおける変更の単位を指します。このリンクは、このコミットがGerrit上でレビューされ、承認されたプロセスを経ていることを示しています。
技術的詳細
このコミット自体は、Go言語のコードベースに対する機能的な変更ではなく、プロジェクトのメタデータに関する変更です。具体的には、CONTRIBUTORS
というテキストファイルに新しい行を追加しています。
CONTRIBUTORS
ファイルは、プロジェクトのルートディレクトリに位置しており、Goプロジェクトに貢献したすべての個人のリストを保持しています。このファイルは、手動で更新されることが一般的であり、新しい貢献者がプロジェクトに加わるたびに、その名前とメールアドレスが追加されます。
コミットメッセージの R=adg, bradfitz
は、この変更がAlan Donovan (adg) と Brad Fitzpatrick (bradfitz) によってレビューされたことを示しています。CC=golang-dev
は、Go開発者メーリングリストにこの変更が通知されたことを意味します。
コアとなるコードの変更箇所
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -36,6 +36,7 @@ Abhinav Gupta <abhinav.g90@gmail.com>
Adam Langley <agl@golang.org>
Adrian O'Grady <elpollouk@gmail.com>
Akshat Kumar <seed@mail.nanosouffle.net>
+Alan Donovan <adonovan@google.com>
Albert Strasheim <fullung@gmail.com>
Aleksandar Dezelin <dezelin@gmail.com>
Alex Brainman <alex.brainman@gmail.com>
この差分は、CONTRIBUTORS
ファイルの36行目以降に、Alan Donovan <adonovan@google.com>
という新しい行が追加されたことを示しています。この行は、既存の貢献者リストの中にアルファベット順で挿入されています。
コアとなるコードの解説
変更されたファイルはCONTRIBUTORS
というプレーンテキストファイルです。このファイルは、Goプロジェクトに貢献した個人の名前とメールアドレスをアルファベット順にリストアップしています。
追加された行 Alan Donovan <adonovan@google.com>
は、Alan Donovan氏がGoプロジェクトの貢献者として正式に認識されたことを意味します。メールアドレスは、その貢献者を一意に識別し、必要に応じて連絡を取るための情報として機能します。
このファイルの更新は、Goプロジェクトのガバナンスと法務プロセスの一部であり、コードの変更そのものと同じくらい重要です。これにより、プロジェクトは貢献者の帰属を明確にし、将来的なライセンスや著作権に関する問題を回避することができます。
関連リンク
- GoプロジェクトのCONTRIBUTORSファイル: 実際のファイルはGoのGitHubリポジトリで確認できます。
- Gerrit: Goプロジェクトがコードレビューに利用しているシステム。
参考にした情報源リンク
- GoプロジェクトのGitHubリポジトリ
- Gerritのドキュメント (一般的なコードレビューシステムとしての情報)
- オープンソースプロジェクトにおける貢献者リストの一般的な慣行に関する情報