Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

[インデックス 16489] ファイルの概要

このコミットは、GoプロジェクトのCONTRIBUTORSファイルに新しい貢献者であるWill Norris氏を追加するものです。これは、彼がGoogleのContributor License Agreement (CLA) に署名したことを反映しています。

コミット

commit 61f5fd6f668fe6e2043361d312ec8c418702b9b3
Author: Andrew Gerrand <adg@golang.org>
Date:   Wed Jun 5 09:11:49 2013 +1000

    C: add Will Norris (Google CLA)
    
    R=golang-dev
    CC=golang-dev
    https://golang.org/cl/10019045

GitHub上でのコミットページへのリンク

https://github.com/golang/go/commit/61f5fd6f668fe6e2043361d312ec8c418702b9b3

元コミット内容

C: add Will Norris (Google CLA)

このコミットは、Goプロジェクトの貢献者リストにWill Norris氏を追加するものであり、彼がGoogleのContributor License Agreement (CLA) に署名したことを示しています。

変更の背景

オープンソースプロジェクトにおいて、貢献者がコードを提出する際には、そのコードの著作権やライセンスに関する取り決めが必要となることがよくあります。特にGoogleのような企業が主導するプロジェクトでは、法的な明確性を確保するためにCLAの署名が求められることが一般的です。

このコミットの背景には、Will Norris氏がGoプロジェクトに貢献する準備が整い、そのために必要なGoogle CLAへの署名が完了したという事実があります。CONTRIBUTORSファイルは、プロジェクトに貢献した個人や団体を公式に記録するためのものであり、新しい貢献者が加わるたびに更新されます。これにより、プロジェクトの透明性が保たれ、誰がどのような形でプロジェクトに関わっているかが明確になります。

前提知識の解説

CONTRIBUTORSファイル

CONTRIBUTORSファイルは、多くのオープンソースプロジェクトで見られるテキストファイルで、そのプロジェクトにコード、ドキュメント、その他の形で貢献した人々の名前と連絡先(通常はメールアドレス)がリストされています。このファイルの目的は以下の通りです。

  1. 貢献者の認識: プロジェクトの成功に貢献した人々を公式に認識し、感謝を示すため。
  2. 透明性: プロジェクトの貢献者ベースを公開し、誰がプロジェクトに関わっているかを明確にするため。
  3. 法的側面: 特定のライセンスモデルやCLAの要件を満たすために、貢献者の記録が必要となる場合があるため。

Contributor License Agreement (CLA)

Contributor License Agreement (CLA) は、個人または企業がオープンソースプロジェクトに貢献する際に、その貢献されたコードの著作権をプロジェクトの所有者(この場合はGoogle)に譲渡するか、または特定のライセンスの下で使用することを許可する法的な合意書です。

CLAの主な目的は以下の通りです。

  1. 著作権の明確化: 貢献されたコードの著作権が誰に帰属するかを明確にし、将来的な著作権紛争を防ぎます。
  2. ライセンスの統一性: プロジェクト全体のコードベースが単一のライセンス(例: BSDライセンス、Apacheライセンスなど)の下で配布されることを保証し、ライセンスの混在による問題を回避します。
  3. 再ライセンスの可能性: プロジェクトの所有者が将来的にプロジェクトのライセンスを変更する際に、貢献されたコードを新しいライセンスの下で再配布する権利を確保します。これは、特に企業が主導するプロジェクトで重要です。

Googleが主導するGoプロジェクトでは、貢献者はGoogle CLAに署名することが求められます。これにより、GoogleはGoプロジェクトのコードベース全体に対する明確な権利を保持し、プロジェクトの長期的な健全性と法的安定性を確保しています。

技術的詳細

このコミットは、GoプロジェクトのルートディレクトリにあるCONTRIBUTORSファイルに対する非常に単純な変更です。具体的には、ファイル内の既存の貢献者リストに新しい行を追加し、Will Norris氏の名前とメールアドレスを挿入しています。

変更は以下の通りです。

  • ファイル: CONTRIBUTORS
  • 変更の種類: 1行の追加
  • 追加された内容: Will Norris <willnorris@google.com>

この変更は、ファイルの特定のセクション(アルファベット順に並べられている可能性が高い)に新しいエントリを挿入する形で行われています。差分情報から、Wei Guangjing <vcc.163@gmail.com>の後にWill Norris <willnorris@google.com>が追加され、その後にWillem van der Schyff <willemvds@gmail.com>が続く形になっています。これは、リストがアルファベット順に維持されていることを示唆しています。

コアとなるコードの変更箇所

diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 20ed3bf21d..074e4150d7 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -423,6 +423,7 @@ Vish Subramanian <vish@google.com>
 Vladimir Nikishenko <vova616@gmail.com>
 Volker Dobler <dr.volker.dobler@gmail.com>
 Wei Guangjing <vcc.163@gmail.com>
+Will Norris <willnorris@google.com>
 Willem van der Schyff <willemvds@gmail.com>
 William Chan <willchan@chromium.org>
 William Josephson <wjosephson@gmail.com>

コアとなるコードの解説

上記の差分は、CONTRIBUTORSファイルに対する変更を示しています。

  • --- a/CONTRIBUTORS+++ b/CONTRIBUTORS は、変更前のファイル (a) と変更後のファイル (b) を示しています。
  • @@ -423,6 +423,7 @@ は、変更がファイルの423行目から始まり、変更前は6行、変更後は7行に影響を与えていることを示しています。
  • +Will Norris <willnorris@google.com> の行が追加された唯一の変更点です。この行の先頭にある+記号は、この行が新しく追加されたことを意味します。

この変更は、CONTRIBUTORSファイルにWill Norris氏の名前とメールアドレスを追加することで、彼がGoプロジェクトの公式な貢献者リストに加わったことを記録しています。これは、彼がGoプロジェクトにコードを提出する法的要件(Google CLAへの署名)を満たした後に通常行われる手続きです。

関連リンク

  • Go Code Review (Gerrit) の変更リスト: https://golang.org/cl/10019045 このリンクは、Goプロジェクトがコードレビューに利用しているGerritシステム上の変更リスト(Change-ID: 10019045)を指しています。通常、GitHubのコミットはGerritでのレビューを経てマージされます。このページでは、コミットの詳細な変更内容、レビューコメント、および関連する議論を確認できます。

参考にした情報源リンク

  • Google Open Source - Contributor License Agreements: https://opensource.google/docs/cla/ GoogleのオープンソースプロジェクトにおけるCLAに関する公式ドキュメント。CLAの目的、署名のプロセス、およびその法的意味合いについて詳細に説明されています。

  • GoプロジェクトのCONTRIBUTORSファイル: https://github.com/golang/go/blob/master/CONTRIBUTORS このコミットによって変更された実際のファイル。現在の最新版のファイル内容を確認できます。