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

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

このコミットは、Go言語の公式ドキュメントの一部である doc/docs.html ファイルに対する変更です。docs.html は、Go言語に関する様々な記事やドキュメントへのリンクをまとめたページであり、ユーザーがGo言語の学習や理解を深めるための重要な入り口となっています。この変更の主な目的は、外部のブログ記事へのリンクを、Go言語の公式ドキュメントサイト内でホストされる記事への内部リンクに更新することです。これにより、ドキュメントの一貫性とアクセシビリティが向上し、リンク切れのリスクが低減されます。

コミット

  • コミットハッシュ: 10689cddba909df37de252fe2dd3d16799c73dc7
  • Author: Andrew Gerrand adg@golang.org
  • Date: Tue Feb 21 13:59:51 2012 +1100

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

https://github.com/golang/go/commit/10689cddba909df37de252fe2dd3d16799c73dc7

元コミット内容

doc: link to self-hosted articles from docs.html

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/5685061

変更の背景

このコミットの背景には、Go言語のドキュメントエコシステムをより統合し、ユーザーエクスペリエンスを向上させるという意図があります。以前は、Go言語に関する重要な解説記事の一部が blog.golang.org のような外部ブログでホストされていました。これらの外部リンクは、ブログの構造変更やドメインの変更などによってリンク切れになる可能性があり、また、公式ドキュメントサイトとブログの間でユーザーが移動する必要がありました。

「self-hosted articles」(自己ホスト型記事)へのリンク変更は、これらの記事をGo言語の公式ドキュメントサイト(golang.org/doc/articles/ のようなパス)内に直接取り込むことを意味します。これにより、以下の利点が得られます。

  1. 一貫性: すべての公式ドキュメントと解説記事が単一のドメインとパス構造の下に統合され、ユーザーはよりシームレスなブラウジング体験を得られます。
  2. 信頼性: 外部ブログの依存関係がなくなるため、リンク切れのリスクが大幅に低減されます。
  3. アクセシビリティ: 公式ドキュメントサイトのナビゲーションや検索機能を通じて、これらの記事がより簡単に見つけられるようになります。
  4. 管理の簡素化: ドキュメントの更新やメンテナンスが、一元化されたリポジトリ内で行えるようになります。

この変更は、Go言語のドキュメントが成熟し、重要なコンテンツをプロジェクト自身が管理する方向へと移行する一環と見なせます。

前提知識の解説

  • doc/docs.html: Go言語の公式ドキュメントの一部であり、Go言語に関する様々なトピック(チュートリアル、記事、パッケージドキュメントなど)へのリンクを集約したHTMLファイルです。ユーザーがGoの学習パスを見つけるための主要なランディングページの一つとして機能します。
  • 自己ホスト型記事 (Self-hosted articles): 外部のプラットフォーム(この場合は blog.golang.org)ではなく、プロジェクト自身のウェブサイトやサーバー上で直接ホストされている記事を指します。これにより、コンテンツの完全な制御が可能になり、外部依存性が排除されます。
  • 絶対URLと相対URL:
    • 絶対URL (Absolute URL): http://blog.golang.org/2010/04/json-rpc-tale-of-interfaces.html のように、プロトコル(http://)、ドメイン名、パスを含む完全なURLです。ウェブ上のどこからでもリソースを一意に特定できます。
    • 相対URL (Relative URL): /doc/articles/defer_panic_recover.html のように、現在のドキュメントの場所からの相対的なパスでリソースを指定します。この場合、golang.org ドメインのルートからの相対パスとなります。相対URLは、同じドメイン内のリソースにリンクする場合に便利で、ドメイン名が変更されてもリンクが有効なまま保たれるという利点があります。
  • Gerrit Change-ID (CL): Goプロジェクトでは、コードレビューと変更管理にGerritを使用しています。コミットメッセージに含まれる https://golang.org/cl/5685061 は、このコミットに対応するGerritの変更リスト(Change List)のIDを示しています。これにより、コミットがどのようにレビューされ、どのような議論があったかを追跡できます。

技術的詳細

このコミットは、doc/docs.html ファイル内のHTMLのアンカータグ(<a>)の href 属性を変更することで実装されています。具体的には、blog.golang.org を指していた絶対URLを、golang.org ドメイン内の /doc/articles/ パスを指す相対URLに書き換えています。

変更されたリンクは以下の通りです。

  1. "Defer, Panic, and Recover":
    • 変更前: <a href="http://blog.golang.org/2010/08/defer-panic-and-recover.html">
    • 変更後: <a href="/doc/articles/defer_panic_recover.html">
  2. "Go Slices: usage and internals":
    • 変更前: <a href="http://blog.golang.org/2011/01/go-slices-usage-and-internals.html">
    • 変更後: <a href="/doc/articles/slices_usage_and_internals.html">
  3. "Error Handling and Go":
    • 変更前: <a href="http://blog.golang.org/2011/07/error-handling-and-go.html">
    • 変更後: <a href="/doc/articles/error_handling.html">

これらの変更は、HTMLファイル内のテキストベースの置換によって行われました。これにより、ウェブサーバーが docs.html を提供する際に、ユーザーのブラウザは新しい相対パスに従ってリソースを要求するようになります。この変更は、サーバー側でこれらの記事が新しいパスに配置されていることを前提としています。

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

--- a/doc/docs.html
+++ b/doc/docs.html
@@ -87,11 +87,11 @@ Guided tours of Go programs.
 <ul>
 <li><a href="http://blog.golang.org/2010/04/json-rpc-tale-of-interfaces.html">JSON-RPC: a tale of interfaces</a></li>
 <li><a href="http://blog.golang.org/2010/07/gos-declaration-syntax.html">Go's Declaration Syntax</a></li>
-<li><a href="http://blog.golang.org/2010/08/defer-panic-and-recover.html">Defer, Panic, and Recover</a></li>
+<li><a href="/doc/articles/defer_panic_recover.html">Defer, Panic, and Recover</a></li>
 <li><a href="http://blog.golang.org/2010/09/go-concurrency-patterns-timing-out-and.html">Go Concurrency Patterns: Timing out, moving on</a></li>
-<li><a href="http://blog.golang.org/2011/01/go-slices-usage-and-internals.html">Go Slices: usage and internals</a></li>
+<li><a href="/doc/articles/slices_usage_and_internals.html">Go Slices: usage and internals</a></li>
 <li><a href="http://blog.golang.org/2011/05/gif-decoder-exercise-in-go-interfaces.html">A GIF decoder: an exercise in Go interfaces</a></li>
-<li><a href="http://blog.golang.org/2011/07/error-handling-and-go.html">Error Handling and Go</a></li>
+<li><a href="/doc/articles/error_handling.html">Error Handling and Go</a></li>
 </ul>
 
 <h3>Packages</h3>

コアとなるコードの解説

上記のdiffは、doc/docs.html ファイルに対する変更を示しています。

  • - で始まる行は削除された行、+ で始まる行は追加された行です。
  • @@ -87,11 +87,11 @@ は、変更がファイルの87行目から始まり、元のファイルと変更後のファイルでそれぞれ11行が影響を受けていることを示します。

具体的には、以下の3つの <li> 要素内の <a> タグの href 属性が変更されています。

  1. Defer, Panic, and Recover のリンク:

    • 元の行: <li><a href="http://blog.golang.org/2010/08/defer-panic-and-recover.html">Defer, Panic, and Recover</a></li>
    • 変更後の行: <li><a href="/doc/articles/defer_panic_recover.html">Defer, Panic, and Recover</a></li>
    • http://blog.golang.org/2010/08/defer-panic-and-recover.html という絶対URLが、/doc/articles/defer_panic_recover.html という相対URLに置き換えられています。
  2. Go Slices: usage and internals のリンク:

    • 元の行: <li><a href="http://blog.golang.org/2011/01/go-slices-usage-and-internals.html">Go Slices: usage and internals</a></li>
    • 変更後の行: <li><a href="/doc/articles/slices_usage_and_internals.html">Go Slices: usage and internals</a></li>
    • 同様に、スライスに関する記事の絶対URLが相対URLに変更されています。
  3. Error Handling and Go のリンク:

    • 元の行: <li><a href="http://blog.golang.org/2011/07/error-handling-and-go.html">Error Handling and Go</a></li>
    • 変更後の行: <li><a href="/doc/articles/error_handling.html">Error Handling and Go</a></li>
    • エラーハンドリングに関する記事の絶対URLも相対URLに更新されています。

これらの変更は、Go言語のドキュメントサイトがこれらの記事を /doc/articles/ パス以下でホストするようになったことを反映しています。これにより、ユーザーはGoの公式ドキュメント内でこれらの重要な記事に直接アクセスできるようになり、外部サイトへのリダイレクトなしに情報を得られるようになります。これは、ドキュメントの統合とユーザーエクスペリエンスの向上に貢献する、シンプルながらも重要な変更です。

関連リンク

参考にした情報源リンク