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

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

このコミットは、AUTHORS および CONTRIBUTORS ファイルの更新に関するものです。具体的には、以下の2つのファイルが変更されています。

  • AUTHORS
  • CONTRIBUTORS

コミット

81b7bad10279913ea468e954b92414509c5c1625

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

https://github.com/golang/go/commit/81b7bad10279913ea468e954b92414509c5c1625

元コミット内容

A+C: Amir Mohammad Saied, Thomas Alan Copeland (both individual CLA)

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

変更の背景

このコミットの背景は、Goプロジェクトへの新たな貢献者であるAmir Mohammad Saied氏とThomas Alan Copeland氏が、個人のContributor License Agreement (CLA) に署名したことにあります。オープンソースプロジェクト、特にGoogleが関与するプロジェクトでは、貢献者が知的財産権をプロジェクトに適切に付与することを保証するためにCLAへの署名を求めることが一般的です。CLAに署名することで、貢献されたコードがプロジェクトのライセンスの下で配布されることが法的に明確になります。

このコミットは、CLAに署名した新しい貢献者の名前をプロジェクトの公式な貢献者リストに追加する目的で行われました。これにより、彼らの貢献が正式に認識され、プロジェクトの透明性と法的健全性が保たれます。

前提知識の解説

AUTHORSファイルとCONTRIBUTORSファイル

多くのオープンソースプロジェクトでは、プロジェクトに貢献した人々を記録するためにAUTHORSファイルやCONTRIBUTORSファイルを使用します。

  • AUTHORSファイル: 主にプロジェクトの主要な作者や、コードベースに大きな影響を与えた人々をリストアップするために使われます。
  • CONTRIBUTORSファイル: より広範な貢献者、例えばバグ修正、ドキュメントの改善、テストの追加など、様々な形でプロジェクトに貢献した人々をリストアップするために使われます。

これらのファイルは、プロジェクトの歴史と、その成功に貢献したコミュニティのメンバーを可視化する役割を果たします。

Contributor License Agreement (CLA)

Contributor License Agreement (CLA) は、オープンソースプロジェクトにおいて、貢献者がその貢献物(コード、ドキュメントなど)の著作権をプロジェクトの所有者(または特定の団体)に譲渡するか、あるいはプロジェクトのライセンスの下で利用することを許可する法的な合意書です。

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

  1. 法的明確性: 貢献されたコードがプロジェクトのライセンスと互換性があることを保証し、将来的な著作権侵害の訴訟リスクを軽減します。
  2. ライセンスの柔軟性: プロジェクトの所有者が将来的にライセンスを変更する際に、すべての貢献者から個別に許可を得る必要がなくなります。
  3. 知的財産権の管理: 企業がプロジェクトに貢献する場合、従業員が作成したコードの権利が企業に帰属することを明確にします。

Goプロジェクトの場合、Googleがプロジェクトをホストしているため、GoogleのCLAに署名することが求められます。これにより、Goプロジェクトのコードベース全体の法的健全性が維持されます。

技術的詳細

このコミットは、Gitの差分(diff)を見るとわかるように、既存のテキストファイルであるAUTHORSCONTRIBUTORSに新しい行を追加する単純な変更です。

具体的には、以下の2名がそれぞれのファイルに追加されています。

  • Amir Mohammad Saied (amir@gluegadget.com)
  • Thomas Alan Copeland (talan.copeland@gmail.com)

これらの追加は、アルファベット順に既存のエントリの中に挿入されており、ファイルの整合性が保たれています。これは、新しい貢献者がCLAに署名し、その情報がプロジェクトの公式記録に反映されたことを示しています。

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

diff --git a/AUTHORS b/AUTHORS
index e274db8d9a..f7130325fa 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -17,6 +17,7 @@ Alex Brainman <alex.brainman@gmail.com>
 Alexander Orlov <alexander.orlov@loxal.net>
 Alexander Reece <awreece@gmail.com>
 Alexey Borzenkov <snaury@gmail.com>
+Amir Mohammad Saied <amir@gluegadget.com>
 Amrut Joshi <amrut.joshi@gmail.com>
 Andrei Vieru <euvieru@gmail.com>
 Andrew Balholm <andybalholm@gmail.com>
@@ -203,6 +204,7 @@ Sven Almgren <sven@tras.se>
 Szabolcs Nagy <nsz@port70.net>
 Tarmigan Casebolt <tarmigan@gmail.com>
 Taru Karttunen <taruti@taruti.net>
+Thomas Alan Copeland <talan.copeland@gmail.com>
 Timo Savola <timo.savola@gmail.com>
 Tor Andersson <tor.andersson@gmail.com>
 Ugorji Nwoke <ugorji@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 620e563f36..48ac47e59d 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -43,6 +43,7 @@ Alexander Orlov <alexander.orlov@loxal.net>
 Alexander Reece <awreece@gmail.com>
 Alexandru Moșoi <brtzsnr@gmail.com>
 Alexey Borzenkov <snaury@gmail.com>
+Amir Mohammad Saied <amir@gluegadget.com>
 Amrut Joshi <amrut.joshi@gmail.com>
 Andrea Spadaccini <spadaccio@google.com>
 Andrei Vieru <euvieru@gmail.com>
@@ -294,6 +295,7 @@ Sven Almgren <sven@tras.se>
 Szabolcs Nagy <nsz@port70.net>
 Tarmigan Casebolt <tarmigan@gmail.com>
 Taru Karttunen <taruti@taruti.net>
+Thomas Alan Copeland <talan.copeland@gmail.com>
 Timo Savola <timo.savola@gmail.com>
 Tom Szymanski <tgs@google.com>\n Tor Andersson <tor.andersson@gmail.com>

コアとなるコードの解説

このコミットにおける「コード」の変更は、Go言語のソースコードそのものではなく、プロジェクトのメタデータファイルであるAUTHORSCONTRIBUTORSへのテキスト追加です。

  • AUTHORSファイルには、Amir Mohammad Saied氏とThomas Alan Copeland氏の名前とメールアドレスが追加されました。これは、彼らがGoプロジェクトの公式な作者または主要な貢献者として認識されたことを意味します。
  • CONTRIBUTORSファイルにも同様に、彼らの名前とメールアドレスが追加されました。これは、彼らがGoプロジェクトに貢献した人々の一員として正式に記録されたことを示します。

これらの変更は、新しい貢献者がGoプロジェクトのContributor License Agreement (CLA) に署名し、その結果として彼らの貢献がプロジェクトの法的枠組みの中で適切に扱われるようになったことを反映しています。このようなファイルへの追加は、オープンソースプロジェクトにおける透明性と、貢献者への感謝を示す一般的な慣行です。

関連リンク

参考にした情報源リンク

  • Goプロジェクトの公式ドキュメント
  • Google Contributor License Agreement (CLA) に関する一般的な情報
  • Gitの差分表示の解釈に関する知識