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

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

このコミットは、Goプロジェクトの貢献者リストにMichael Stapelberg氏を追加するものです。具体的には、AUTHORSファイルとCONTRIBUTORSファイルに彼の名前と連絡先情報を追記しています。これは、彼がGoプロジェクトへの貢献を開始するにあたり、個人貢献者ライセンス契約(Individual CLA)を締結したことを示しています。

コミット

commit ec6b5123feb4df04dfa470db609171a9401ec7c5
Author: Russ Cox <rsc@golang.org>
Date:   Mon Jun 25 17:32:31 2012 -0400

    A+C: add Michael Stapelberg (individual CLA)
    
    R=golang-dev, bradfitz
    CC=golang-dev
    https://golang.org/cl/6325058
---
 AUTHORS      | 1 +
 CONTRIBUTORS | 1 +
 2 files changed, 2 insertions(+)

diff --git a/AUTHORS b/AUTHORS
index f7130325fa..71432b57b1 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -150,6 +150,7 @@ Michael Elkins <michael.elkins@gmail.com>
 Michael Gehring <mg@ebfe.org>
 Michael Hoisie <hoisie@gmail.com>
 Michael Lewis <mikelikespie@gmail.com>
+Michael Stapelberg <michael@stapelberg.de>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl>
 Mikael Tillenius <mikti42@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 48ac47e59d..fef2faefe0 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -223,6 +223,7 @@ Michael Gehring <mg@ebfe.org>
 Michael Hoisie <hoisie@gmail.com>
 Michael Lewis <mikelikespie@gmail.com>
 Michael Shields <mshields@google.com>
+Michael Stapelberg <michael@stapelberg.de> <mstplbrg@googlemail.com>
 Michael T. Jones <mtj@google.com> <michael.jones@gmail.com>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl> <remigius.gieben@gmail.com>

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

https://github.com/golang/go/commit/ec6b5123feb4df04dfa470db609171a9401ec7c5

元コミット内容

A+C: add Michael Stapelberg (individual CLA)

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6325058

変更の背景

オープンソースプロジェクト、特にGoのような大規模で活発なプロジェクトでは、多くの個人や企業がコードベースに貢献します。このような貢献を受け入れる際、プロジェクトの法的健全性を保つために、貢献者ライセンス契約(CLA: Contributor License Agreement)の締結が求められることが一般的です。

このコミットは、Michael Stapelberg氏がGoプロジェクトへの貢献を開始するにあたり、必要なIndividual CLAを締結したことを受けて行われました。CLAの締結は、プロジェクトが貢献されたコードを安心して利用・配布できる法的基盤を確立するために不可欠です。これにより、プロジェクトは将来的な知的財産権に関する紛争のリスクを低減し、安定した開発を継続できます。

Michael Stapelberg氏は、Go言語の熱心な支持者であり、Debian Code Search、gokrazy、router7など、Goを用いた数々の著名なプロジェクトを手がけています。また、DebianにおけるGoパッケージングチームの立ち上げにも貢献するなど、Goコミュニティにおいて重要な役割を担っています。このような背景を持つ彼がGoプロジェクトの公式な貢献者として加わることは、プロジェクトにとって大きな意味を持ちます。

前提知識の解説

Contributor License Agreement (CLA)

CLA(Contributor License Agreement)は、オープンソースプロジェクトにおいて、貢献者が自身のコードの著作権をプロジェクトの所有者(多くの場合、財団や企業)に譲渡するか、または特定のライセンスの下で利用することを許可する法的な合意書です。

CLAの目的と重要性:

  1. 知的財産権の明確化: CLAは、貢献されたコードの知的財産権の帰属を明確にします。これにより、プロジェクトの所有者は、貢献されたコードをプロジェクトのライセンス(例: Apache License, MIT Licenseなど)の下で再配布・利用する権利を確実に得ることができます。
  2. 法的リスクの軽減: 貢献されたコードに起因する将来的な著作権侵害訴訟やライセンス違反のリスクを低減します。CLAがない場合、プロジェクトは各貢献者から個別にライセンスの許諾を得る必要があり、これは非常に複雑でリスクの高い作業となります。
  3. ライセンス変更の柔軟性: プロジェクトが将来的にライセンスを変更する必要が生じた場合、CLAによってすべての貢献されたコードに対する権利が明確になっているため、スムーズなライセンス変更が可能になります。
  4. 大規模プロジェクトでの採用: Google(Android, Go)、Apache Software Foundation、Linux Foundationなど、多くの大規模なオープンソースプロジェクトや財団でCLAの締結が義務付けられています。これは、これらのプロジェクトが法的安定性を重視しているためです。

CLAには「Individual CLA」(個人貢献者向け)と「Corporate CLA」(企業貢献者向け)の2種類が一般的です。このコミットでは「individual CLA」と明記されており、Michael Stapelberg氏が個人として契約を締結したことを示しています。

AUTHORSファイルとCONTRIBUTORSファイル

多くのオープンソースプロジェクトでは、プロジェクトに貢献した人々を記録するために、AUTHORSCONTRIBUTORSといったテキストファイルがリポジトリ内に存在します。

  • AUTHORSファイル: 主にプロジェクトの主要な作者や、著作権を保持する個人・団体をリストアップするために使用されます。このファイルは、プロジェクトの著作権表示の一部として機能することがあります。
  • CONTRIBUTORSファイル: プロジェクトに何らかの形で貢献したすべての個人をリストアップするために使用されます。これには、コードのコミット者だけでなく、ドキュメントの作成者、バグ報告者、テスター、翻訳者なども含まれることがあります。このファイルは、コミュニティの努力を認識し、感謝を示す役割も果たします。

これらのファイルは通常、シンプルなテキスト形式で、各行に貢献者の名前と連絡先(メールアドレスなど)が記載されます。このコミットでは、Michael Stapelberg氏がGoプロジェクトの正式な貢献者として認められたため、これら両方のファイルに彼の情報が追加されました。

技術的詳細

このコミットは、Goプロジェクトのソースコードリポジトリ内の2つのプレーンテキストファイル、AUTHORSCONTRIBUTORSに新しい行を追加するものです。Gitの差分(diff)を見ると、それぞれのファイルに1行ずつ追加されていることがわかります。

  • AUTHORSファイルへの追加: +Michael Stapelberg <michael@stapelberg.de> この行は、Michael Stapelberg氏の名前と彼の主要なメールアドレスをAUTHORSファイルに追加しています。これは、彼がGoプロジェクトの公式な作者の一人として認識されたことを意味します。

  • CONTRIBUTORSファイルへの追加: +Michael Stapelberg <michael@stapelberg.de> <mstplbrg@googlemail.com> この行は、Michael Stapelberg氏の名前と、彼の主要なメールアドレスに加えて、もう一つのメールアドレス(Google関連の可能性が高い)をCONTRIBUTORSファイルに追加しています。CONTRIBUTORSファイルはより広範な貢献者をリストするため、複数の連絡先が記載されることがあります。

これらの変更は、コードの機能には直接影響を与えませんが、プロジェクトの管理と法的コンプライアンスにおいて重要な意味を持ちます。Gitのコミット履歴を通じて、誰がいつプロジェクトに貢献者として加わったかを追跡するための公式な記録となります。

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

diff --git a/AUTHORS b/AUTHORS
index f7130325fa..71432b57b1 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -150,6 +150,7 @@ Michael Elkins <michael.elkins@gmail.com>
 Michael Gehring <mg@ebfe.org>
 Michael Hoisie <hoisie@gmail.com>
 Michael Lewis <mikelikespie@gmail.com>
+Michael Stapelberg <michael@stapelberg.de>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl>
 Mikael Tillenius <mikti42@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 48ac47e59d..fef2faefe0 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -223,6 +223,7 @@ Michael Gehring <mg@ebfe.org>
 Michael Hoisie <hoisie@gmail.com>
 Michael Lewis <mikelikespie@gmail.com>
 Michael Shields <mshields@google.com>
+Michael Stapelberg <michael@stapelberg.de> <mstplbrg@googlemail.com>
 Michael T. Jones <mtj@google.com> <michael.jones@gmail.com>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl> <remigius.gieben@gmail.com>

コアとなるコードの解説

上記の差分が示すように、このコミットによる「コード」の変更は、既存のテキストファイルに新しい行を追加する非常にシンプルなものです。

  • AUTHORSファイルでは、既存のMichaelという名前で始まるエントリ群の後に、Michael Stapelberg <michael@stapelberg.de>という行が追加されています。これは、アルファベット順に並べられたリストに新しいエントリを挿入する一般的なパターンです。
  • CONTRIBUTORSファイルでも同様に、既存のMichaelという名前で始まるエントリ群の後に、Michael Stapelberg <michael@stapelberg.de> <mstplbrg@googlemail.com>という行が追加されています。

これらの変更は、Go言語のコンパイラやランタイム、標準ライブラリの動作に直接的な影響を与えるものではありません。しかし、プロジェクトの公式な記録として、Michael Stapelberg氏がGoプロジェクトの貢献者コミュニティの一員となったことを永続的に記録する役割を果たします。これは、オープンソースプロジェクトのガバナンスと透明性において重要な側面です。

関連リンク

参考にした情報源リンク