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

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

このコミットは、GoプロジェクトのAUTHORSファイルとCONTRIBUTORSファイルに、新しい貢献者であるMichael Teichgräber氏の情報を追加するものです。これは、彼がGoプロジェクトに貢献するための個人貢献者ライセンス契約(Individual CLA)を締結したことを示すものです。

コミット

commit eaced459ca567a364bcb18598efcd8cf7118a894
Author: Russ Cox <rsc@golang.org>
Date:   Wed Jan 30 09:25:10 2013 -0800

    A+C: Michael Teichgräber (individual CLA)
    
    Generated by addca.
    
    R=gobot
    CC=golang-dev
    https://golang.org/cl/7237057

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

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

元コミット内容

A+C: Michael Teichgräber (individual CLA)

Generated by addca.

R=gobot
CC=golang-dev
https://golang.org/cl/7237057

変更の背景

このコミットの背景には、オープンソースプロジェクトにおける貢献者ライセンス契約(CLA)の重要性があります。Goプロジェクトのような大規模なオープンソースプロジェクトでは、プロジェクトの知的財産権を保護し、将来的なライセンス変更や法的問題からプロジェクトを守るために、貢献者に対してCLAへの署名を求めることが一般的です。

Michael Teichgräber氏がGoプロジェクトにコードを貢献するにあたり、個人貢献者ライセンス契約(Individual CLA)を締結しました。この契約が完了したことをプロジェクトの記録として残すため、そして彼が正式な貢献者として認識されるように、AUTHORSファイルとCONTRIBUTORSファイルに彼の名前と連絡先情報が追加されました。

コミットメッセージにある "Generated by addca." は、この変更がaddcaというツールによって自動生成されたものであることを示唆しています。これは、CLAの管理プロセスが自動化されており、手動でのファイル編集ミスを防ぎ、効率的に貢献者情報を更新するための仕組みが存在することを示しています。

前提知識の解説

貢献者ライセンス契約 (Contributor License Agreement, CLA)

CLAは、個人または企業がオープンソースプロジェクトに貢献する際に、その貢献物の著作権をプロジェクトの所有者(または指定された団体)に譲渡するか、または特定のライセンスの下で利用することを許可する法的な合意書です。GoプロジェクトのようなGoogleが関与するプロジェクトでは、Googleがプロジェクトの知的財産権を管理するためにCLAを要求することが一般的です。

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

  • 知的財産権の明確化: 誰がコードの著作権を所有しているかを明確にし、将来的なライセンス変更や再ライセンスの際に、すべての貢献者からの許可を得る必要がないようにします。
  • 法的リスクの軽減: 貢献されたコードが第三者の著作権を侵害していないことを確認し、プロジェクトが法的紛争に巻き込まれるリスクを低減します。
  • プロジェクトの持続可能性: プロジェクトのライセンスモデルを柔軟に維持し、将来的にプロジェクトのライセンスを変更する必要が生じた場合でも、スムーズに対応できるようにします。

AUTHORSファイルとCONTRIBUTORSファイル

多くのオープンソースプロジェクトでは、プロジェクトに貢献した人々の名前を記録するためのファイルが存在します。GoプロジェクトにおけるAUTHORSCONTRIBUTORSファイルもその一例です。

  • AUTHORSファイル: 通常、プロジェクトの主要な作者や、初期段階から深く関わっている人々、または特に重要な貢献をした人々がリストされます。このファイルは、プロジェクトの歴史的な記録としての意味合いが強いです。
  • CONTRIBUTORSファイル: プロジェクトにコード、ドキュメント、バグ報告、テストなど、何らかの形で貢献したすべての個人がリストされます。CLAを締結した個人は、通常このファイルに追加されます。このファイルは、プロジェクトのコミュニティと貢献の広がりを示すものです。

これらのファイルは、プロジェクトの透明性を高め、貢献者への感謝を示す役割も果たします。

golang.org/cl/ リンク

コミットメッセージに含まれる https://golang.org/cl/7237057 は、GoプロジェクトのコードレビューシステムであるGerritのチェンジリスト(Change-list)へのリンクです。Goプロジェクトでは、すべてのコード変更はGerritを通じてレビューされ、承認された後にGitリポジトリにマージされます。このリンクは、このコミットがマージされる前のレビュープロセスを追跡するためのものです。

技術的詳細

このコミットは、Goプロジェクトのソースコード管理におけるメタデータの一部を更新するものです。具体的には、プロジェクトの貢献者リストを管理するテキストファイルであるAUTHORSCONTRIBUTORSに、新しいエントリを追加しています。

変更は非常にシンプルで、各ファイルの適切なアルファベット順の位置に、Michael Teichgräber氏の名前とメールアドレスが追加されています。

  • AUTHORSファイルには、Michael Teichgräber <mteichgraeber@gmx.de>が追加されています。
  • CONTRIBUTORSファイルには、Michael Teichgräber <mteichgraeber@gmx.de> <mt4swm@googlemail.com>が追加されています。CONTRIBUTORSファイルには、複数のメールアドレスが記載されることがあります。これは、貢献者が異なるメールアドレスで活動している場合や、CLA締結時に使用したメールアドレスと、普段のコミットに使用するメールアドレスが異なる場合に対応するためと考えられます。

この変更は、Goプロジェクトのビルドプロセスやランタイム動作には直接的な影響を与えません。これは、プロジェクトの管理とガバナンスに関連する変更であり、法的な側面とコミュニティの記録としての意味合いが強いです。

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

diff --git a/AUTHORS b/AUTHORS
index 7c544cb84a..e054b41744 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -183,6 +183,7 @@ Michael Gehring <mg@ebfe.org>
 Michael Hoisie <hoisie@gmail.com>
 Michael Lewis <mikelikespie@gmail.com>
 Michael Stapelberg <michael@stapelberg.de>
+Michael Teichgräber <mteichgraeber@gmx.de>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl>
 Mikael Tillenius <mikti42@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 956d3f3e10..3e3015f825 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -271,6 +271,7 @@ 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>
+Michael Teichgräber <mteichgraeber@gmx.de> <mt4swm@googlemail.com>
 Michał Derkacz <ziutek@lnet.pl>
 Miek Gieben <miek@miek.nl> <remigius.gieben@gmail.com>
 Mikael Tillenius <mikti42@gmail.com>

コアとなるコードの解説

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

  • AUTHORSファイルへの追加:

    • @@ -183,6 +183,7 @@ は、変更が元のファイルの183行目から6行を対象とし、変更後には183行目から7行になることを示しています。
    • +Michael Teichgräber <mteichgraeber@gmx.de> の行が追加されています。これは、Michael Teichgräber氏の名前と主要なメールアドレスがAUTHORSリストに加わったことを意味します。既存の貢献者リストのアルファベット順に挿入されています。
  • CONTRIBUTORSファイルへの追加:

    • @@ -271,6 +271,7 @@ は、変更が元のファイルの271行目から6行を対象とし、変更後には271行目から7行になることを示しています。
    • +Michael Teichgräber <mteichgraeber@gmx.de> <mt4swm@googlemail.com> の行が追加されています。こちらも同様に、Michael Teichgräber氏の名前と、2つのメールアドレスがCONTRIBUTORSリストに加わったことを意味します。

これらの変更は、Goプロジェクトの貢献者管理プロセスの一環として、CLAを締結した新しい貢献者を公式に認識し、記録するためのものです。

関連リンク

参考にした情報源リンク