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

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

コミット

このコミットは、Go言語の公式ドキュメント doc/install-source.html から、weekly タグに関する記述を削除するものです。具体的には、GoプロジェクトがMercurialリポジトリで管理していた安定版タグの説明から weekly タグへの言及を削除し、weekly タグの使用方法に関する段落全体を削除しています。

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

https://github.com/golang/go/commit/67d8a2d4c14fe98cb4035869ce5e6daf883dfb14

元コミット内容

commit 67d8a2d4c14fe98cb4035869ce5e6daf883dfb14
Author: Andrew Gerrand <adg@golang.org>
Date:   Mon Jul 30 15:36:56 2012 +1000

    doc: remove mention of weekly tag from source install doc
    
    R=golang-dev, dsymonds, bradfitz
    CC=golang-dev
    https://golang.org/cl/6442062

変更の背景

この変更は、Goプロジェクトのリリース戦略または開発ワークフローの変更を反映していると考えられます。2012年当時、Goはまだ比較的新しい言語であり、その開発プロセスは進化の途中にありました。初期のGoプロジェクトでは、release タグに加えて weekly タグというものが存在し、これは文字通り毎週更新される開発版のスナップショットを指していました。これは、活発な開発が行われているGoコアに携わる開発者向けに提供されていた可能性があります。

しかし、プロジェクトが成熟し、より安定したリリースサイクルへと移行するにつれて、weekly タグのような頻繁なスナップショットの提供が不要になったか、あるいは別の開発ブランチ戦略(例: master/main ブランチが常に最新の開発版を指すなど)に移行した可能性があります。ドキュメントから weekly タグの言及を削除することは、このタグがもはや公式に推奨される、あるいは存在しない開発ブランチであることを示唆しています。これにより、ユーザーが混乱することなく、推奨される安定版 (release タグ) を使用するように促す意図があったと推測されます。

前提知識の解説

  • Go言語 (Golang): Googleによって開発されたオープンソースのプログラミング言語。シンプルさ、効率性、並行処理のサポートを特徴とします。
  • Mercurial (Hg): 分散型バージョン管理システムの一つ。Gitと同様に、コードの変更履歴を管理し、複数の開発者間での共同作業を可能にします。Goプロジェクトは初期にはMercurialを使用していましたが、後にGitに移行しました。
  • タグ (Tag): バージョン管理システムにおいて、特定のコミットに意味のある名前(例: v1.0.0, release, weekly など)を付ける機能。これにより、特定の時点のコードベースを簡単に参照したり、チェックアウトしたりできます。
  • release タグ: 一般的に、ソフトウェアの安定版リリースを示すために使用されるタグ。ユーザーが本番環境で使用することを推奨されるバージョンです。
  • weekly タグ: この文脈では、毎週更新される開発版のスナップショットを指すカスタムタグ。開発の進捗を追跡したり、最新の変更を試したりするために使用されることがありました。
  • doc/install-source.html: Go言語のソースコードからGoをビルド・インストールする方法を説明する公式ドキュメントのHTMLファイル。

技術的詳細

このコミットは、doc/install-source.html ファイルに対する変更です。変更内容は非常にシンプルで、HTMLドキュメント内のテキストを修正しています。

具体的には、以下の2つの変更が行われています。

  1. 安定版タグの説明の変更: 変更前:

    <p>
    The Go project maintains two stable tags in its Mercurial repository:
    <code>release</code> and <code>weekly</code>.
    </p>
    

    変更後:

    <p>
    The Go project maintains a stable tag in its Mercurial repository:
    <code>release</code>.
    </p>
    

    これにより、GoプロジェクトがMercurialリポジトリで管理する「安定版タグ」が release のみであることを明確にしています。weekly が安定版ではない、あるいはもはや存在しないことを示唆しています。

  2. weekly タグに関する段落の削除: 変更前には、weekly タグが毎週更新され、Goコアに積極的に取り組む開発者のみが使用すべきであること、そして hg update weekly コマンドでそのタグに切り替えられることが説明されていました。この段落全体が削除されています。

    <p>
    The <code>weekly</code> tag is updated about once a week, and should be used 
    only by those who are actively working on the Go core.
    To use the <code>weekly</code> tag run <code>hg update weekly</code> instead.
    </p>
    

    この削除により、weekly タグに関する情報がドキュメントから完全に消え、ユーザーがこのタグを使用しようとすることを防ぎます。

これらの変更は、Goプロジェクトが開発版の配布方法を変更したか、あるいは weekly タグの概念自体を廃止したことを示しています。ドキュメントの整合性を保ち、ユーザーに最新かつ正確な情報を提供するためのクリーンアップ作業です。

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

--- a/doc/install-source.html
+++ b/doc/install-source.html
@@ -247,8 +247,8 @@ Bugs can be reported using the <a href="http://code.google.com/p/go/issues/list"
 <h2 id="releases">Keeping up with releases</h2>
 
 <p>
-The Go project maintains two stable tags in its Mercurial repository:
-<code>release</code> and <code>weekly</code>.
+The Go project maintains a stable tag in its Mercurial repository:
+<code>release</code>.
 </p>
 
 <p>
@@ -269,12 +269,6 @@ $ hg update release
 $ ./all.bash
 </pre>
 
-<p>
-The <code>weekly</code> tag is updated about once a week, and should be used 
-only by those who are actively working on the Go core.
-To use the <code>weekly</code> tag run <code>hg update weekly</code> instead.
-</p>
-
 
 <h2 id="environment">Optional environment variables</h2>
 

コアとなるコードの解説

変更は doc/install-source.html ファイル内のHTMLマークアップに対して行われています。

  1. 行 247-248 の変更: The Go project maintains two stable tags in its Mercurial repository: <code>release</code> and <code>weekly</code>.The Go project maintains a stable tag in its Mercurial repository: <code>release</code>. に変更されています。 これは、Goプロジェクトが提供する「安定版タグ」のリストから weekly を削除し、release のみが安定版として扱われることを明示しています。

  2. 行 269-274 の削除: weekly タグに関する説明の段落全体が削除されています。この段落は、weekly タグの性質(毎週更新されること)、対象ユーザー(Goコア開発者)、および使用方法(hg update weekly)を説明していました。この段落の削除により、weekly タグに関する情報がドキュメントから完全に消去され、ユーザーがこのタグに依存したり、誤って使用したりする可能性を排除しています。

これらの変更は、ドキュメントの正確性を保ち、Goプロジェクトの現在の開発およびリリース戦略を反映させるためのものです。

関連リンク

参考にした情報源リンク

  • Go言語のリリースプロセスに関する歴史的な情報(当時のメーリングリストやブログ記事など)
  • Mercurialのタグ機能に関する一般的な情報
  • Go言語の初期のバージョン管理戦略に関する議論(もし公開されているものがあれば)

(注: 2012年当時の具体的なGoプロジェクトのリリース戦略変更に関する公式発表や詳細な議論のリンクは、現在のWeb上では見つけにくい場合があります。上記の「変更の背景」と「前提知識の解説」は、一般的なソフトウェアプロジェクトのライフサイクルとバージョン管理の慣行に基づいた推測を含みます。)