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

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

このコミットは、AUTHORS ファイルと CONTRIBUTORS ファイルという、プロジェクトの貢献者情報を記録する2つのファイルを変更しています。これらのファイルは、オープンソースプロジェクトにおいて、コードベースに貢献した個人を公式に認識し、記録するために一般的に使用されます。

  • AUTHORS: プロジェクトの主要な作者や、特に重要な貢献者、あるいはプロジェクトの初期段階から関わっている人々をリストアップすることが多いです。
  • CONTRIBUTORS: プロジェクトに何らかの形で貢献したすべての個人を網羅的にリストアップします。これには、コードのコミットだけでなく、バグ報告、ドキュメントの改善、テストの作成など、様々な貢献が含まれる場合があります。

このコミットでは、新しい貢献者である Bjorn Tipling <bjorn.tipling@gmail.com> の情報がこれら両方のファイルに追加されています。

コミット

commit ec878116627919876b429f8eca70815ed10544c0
Author: Gustavo Niemeyer <gustavo@niemeyer.net>
Date:   Fri Feb 10 22:35:42 2012 -0200

    CONTRIBUTORS: add Bjorn Tipling <bjorn.tipling@gmail.com>
    
    R=golang-dev, bradfitz
    CC=golang-dev
    https://golang.org/cl/5645085

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

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

元コミット内容

CONTRIBUTORS: add Bjorn Tipling <bjorn.tipling@gmail.com>

変更の背景

このコミットの背景は非常に明確です。Goプロジェクトに新たに貢献した Bjorn Tipling 氏を、プロジェクトの公式な貢献者リストに追加するためです。オープンソースプロジェクトでは、貢献者がコードベースに初めて意味のある貢献をした際、その功績を認め、記録するためにこのようなリストに名前を追加するのが一般的な慣習です。これにより、プロジェクトの透明性が保たれ、誰がプロジェクトの発展に寄与したかが明確になります。また、ライセンスや著作権の観点からも、貢献者を明記することは重要です。

前提知識の解説

オープンソースプロジェクトにおける貢献者リスト

多くのオープンソースプロジェクトでは、プロジェクトのソースコードとは別に、貢献者(contributor)のリストを管理しています。これは通常、AUTHORSCONTRIBUTORSCREDITS といった名前のプレーンテキストファイルとしてプロジェクトのルートディレクトリに配置されます。

  • 目的:
    • 功績の認識: プロジェクトに貢献した個人や団体を公式に認識し、その努力を称えるため。
    • 透明性: プロジェクトがどのように成長し、誰によって支えられているかをコミュニティに示すため。
    • 法的側面: 著作権やライセンスに関する問題が発生した場合に、貢献者を特定するための情報源となることがあります。特に、プロジェクトが複数の貢献者によって開発されている場合、各貢献者の著作権表示を適切に行うために重要です。
    • コミュニティ形成: 新しい貢献者を歓迎し、コミュニティへの参加を促す文化を醸成するため。

Goプロジェクトの貢献プロセス

Goプロジェクトのような大規模なオープンソースプロジェクトでは、貢献者がコードをコミットする前に、特定のプロセス(例: コードレビュー、CLA (Contributor License Agreement) への署名)を経る必要があります。このコミットメッセージにある R=golang-dev, bradfitzCC=golang-dev は、Goプロジェクトにおけるレビュープロセスの一部を示唆しています。

  • R=golang-dev, bradfitz: レビュー担当者(Reviewer)を示します。golang-dev はGo開発者メーリングリスト、bradfitz は特定の個人(Brad Fitzpatrick氏)を指します。これは、この変更がこれらのレビュー担当者によって承認されたことを意味します。
  • CC=golang-dev: カーボンコピー(Carbon Copy)で、この変更に関する通知が golang-dev メーリングリストにも送られたことを示します。
  • https://golang.org/cl/5645085: これはGoプロジェクトが使用しているGerritというコードレビューシステムにおける変更リスト(Change List)のURLです。Goプロジェクトでは、GitHubのプルリクエストではなく、Gerritを通じて変更が提案・レビュー・マージされるのが一般的です。このURLにアクセスすれば、このコミットに至るまでのレビューの経緯や議論の詳細を確認できます。

技術的詳細

このコミット自体は、Go言語のコードベースに対する技術的な変更ではなく、プロジェクトのメタデータファイルに対する変更です。

  • ファイル形式: AUTHORS および CONTRIBUTORS ファイルは、通常、各行に1人の貢献者の名前とメールアドレス(またはその他の連絡先情報)が記述されたプレーンテキストファイルです。このコミットでは、Bjorn Tipling <bjorn.tipling@gmail.com> という形式で情報が追加されています。
  • 変更の種類: 既存のファイルに新しい行を挿入する、非常に単純な変更です。Gitの差分(diff)を見ると、特定の行に新しいエントリが追加されていることがわかります。
  • Gitの差分表示:
    • --- a/AUTHORS+++ b/AUTHORS は、それぞれ変更前の AUTHORS ファイルと変更後の AUTHORS ファイルを示します。
    • @@ -32,6 +32,7 @@ は、差分がファイルの32行目から始まり、変更前は6行、変更後は7行になったことを示します。
    • +Bjorn Tipling <bjorn.tipling@gmail.com> の行頭の + は、この行が追加されたことを意味します。

このような変更は、プロジェクトのビルドや実行には直接影響を与えませんが、プロジェクトの管理とコミュニティの健全性にとって重要な意味を持ちます。

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

diff --git a/AUTHORS b/AUTHORS
index 4ef7bd30f6..ec71bb9e6e 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -32,6 +32,7 @@ Arvindh Rajesh Tamilmani <art@a-30.net>
 Ben Olive <sionide21@gmail.com>
 Benny Siegert <bsiegert@gmail.com>
 Berengar Lehr <berengar.lehr@gmx.de>
+Bjorn Tipling <bjorn.tipling@gmail.com>
 Blake Mizerany <blake.mizerany@gmail.com>
 Bobby Powers <bobbypowers@gmail.com>
 Caine Tighe <arctanofyourface@gmail.com>
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index fb02b3013b..65d401aa0f 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -64,6 +64,7 @@ Ben Olive <sionide21@gmail.com>
 Benny Siegert <bsiegert@gmail.com>
 Berengar Lehr <Berengar.Lehr@gmx.de>
 Bill Neubauer <wcn@golang.org> <wcn@google.com>
+Bjorn Tipling <bjorn.tipling@gmail.com>
 Blake Mizerany <blake.mizerany@gmail.com>
 Bobby Powers <bobbypowers@gmail.com>
 Brad Fitzpatrick <bradfitz@golang.org> <bradfitz@gmail.com>

コアとなるコードの解説

上記の差分は、AUTHORS ファイルと CONTRIBUTORS ファイルの両方に、新しい行が1行ずつ追加されたことを示しています。

  1. AUTHORS ファイルへの変更:

    • Berengar Lehr <berengar.lehr@gmx.de> の行の直後に、Bjorn Tipling <bjorn.tipling@gmail.com> という行が追加されています。これは、AUTHORS ファイルの既存のリストに新しいエントリが挿入されたことを意味します。
  2. CONTRIBUTORS ファイルへの変更:

    • Bill Neubauer <wcn@golang.org> <wcn@google.com> の行の直後に、Bjorn Tipling <bjorn.tipling@gmail.com> という行が追加されています。同様に、CONTRIBUTORS ファイルの既存のリストに新しいエントリが挿入されたことを意味します。

この変更は、Goプロジェクトの貢献者リストを最新の状態に保つための、定期的かつルーティンな更新の一部です。

関連リンク

参考にした情報源リンク

  • Goプロジェクトの公式ドキュメント (貢献ガイドライン): https://go.dev/doc/contribute
  • Gitの差分表示に関する一般的な情報 (例: git diff のマニュアルページなど)
  • オープンソースプロジェクトにおける AUTHORS および CONTRIBUTORS ファイルの一般的な慣習に関する知識
  • Gerrit コードレビューシステムに関する一般的な知識