Commit 968f0df5 authored by Andrew Gerrand's avatar Andrew Gerrand

doc: update source install instructions

Change-Id: I794a5773ed47d470ff91fcdd82f9747a91424eb4
Reviewed-on: https://go-review.googlesource.com/1402Reviewed-by: default avatarRob Pike <r@golang.org>
parent 722f7d28
...@@ -6,19 +6,10 @@ ...@@ -6,19 +6,10 @@
<p> <p>
This document explains how to contribute changes to the Go project. This document explains how to contribute changes to the Go project.
It assumes you have installed Go from source: It assumes you have followed the
<p>
<pre>
$ git clone https://go.googlesource.com/go
$ cd go/src
$ ./all.bash
</pre>
<!--
TODO(adg): delete the above, restore the below after we have updated install-source.html
<a href="/doc/install/source">installation instructions</a> and <a href="/doc/install/source">installation instructions</a> and
have <a href="code.html">written and tested your code</a>. have <a href="code.html">written and tested your code</a>.
--> </p>
<p> <p>
(Note that the <code>gccgo</code> frontend lives elsewhere; (Note that the <code>gccgo</code> frontend lives elsewhere;
......
...@@ -81,38 +81,21 @@ The full set of supported combinations is listed in the discussion of ...@@ -81,38 +81,21 @@ The full set of supported combinations is listed in the discussion of
<p> <p>
The Go tool chain is written in C. To build it, you need a C compiler installed. The Go tool chain is written in C. To build it, you need a C compiler installed.
Please refer to the <a href="//golang.org/wiki/InstallFromSource#Install_C_tools">InstallFromSource</a> Please refer to the <a href="//golang.org/wiki/InstallFromSource#install-c-tools">InstallFromSource</a>
page on the Go community Wiki for operating system specific instructions. page on the Go community Wiki for operating system specific instructions.
</p> </p>
<h2 id="mercurial">Install Mercurial, if needed</h2> <h2 id="git">Install Git, if needed</h2>
<p> <p>
To perform the next step you must have Mercurial installed. (Check that you To perform the next step you must have Git installed. (Check that you
have an <code>hg</code> command.) have a <code>git</code> command before proceeding.)
</p> </p>
<p> <p>
If you do not have a working Mercurial installation, If you do not have a working Git installation,
follow the instructions on the follow the instructions on the
<a href="http://mercurial.selenic.com/downloads">Mercurial downloads</a> page. <a href="http://git-scm.com/downloads">Git downloads</a> page.
</p>
<p>
Mercurial versions 1.7.x and up require the configuration of
<a href="http://mercurial.selenic.com/wiki/CACertificates">Certification Authorities</a>
(CAs). Error messages of the form:
</p>
<pre>
warning: code.google.com certificate with fingerprint b1:af: ... bc not verified (check hostfingerprints or web.cacerts config setting)
</pre>
<p>
when using Mercurial indicate that the CAs are missing.
Check your Mercurial version (<code>hg --version</code>) and
<a href="http://mercurial.selenic.com/wiki/CACertificates#Configuration_of_HTTPS_certificate_authorities">configure the CAs</a>
if necessary.
</p> </p>
...@@ -121,22 +104,24 @@ if necessary. ...@@ -121,22 +104,24 @@ if necessary.
<p>Go will install to a directory named <code>go</code>. <p>Go will install to a directory named <code>go</code>.
Change to the directory that will be its parent Change to the directory that will be its parent
and make sure the <code>go</code> directory does not exist. and make sure the <code>go</code> directory does not exist.
Then check out the repository:</p> Then clone the repository and check out the latest release tag:</p>
<pre> <pre>
$ hg clone -u release https://code.google.com/p/go $ git clone https://go.googlesource.com/go
$ cd go
$ git checkout go1.4
</pre> </pre>
<h2 id="head">(Optional) Switch to the default branch</h2> <h2 id="head">(Optional) Switch to the master branch</h2>
<p>If you intend to modify the go source code, and <p>If you intend to modify the go source code, and
<a href="/doc/contribute.html">contribute your changes</a> <a href="/doc/contribute.html">contribute your changes</a>
to the project, then move your repository to the project, then move your repository
off the release branch, and onto the default (development) branch. off the release branch, and onto the master (development) branch.
Otherwise, skip this step.</p> Otherwise, skip this step.</p>
<pre> <pre>
$ hg update default $ git checkout master
</pre> </pre>
<h2 id="install">Install Go</h2> <h2 id="install">Install Go</h2>
...@@ -259,7 +244,7 @@ $ go get golang.org/x/tools/cmd/godoc ...@@ -259,7 +244,7 @@ $ go get golang.org/x/tools/cmd/godoc
<p> <p>
To install these tools, the <code>go</code> <code>get</code> command requires To install these tools, the <code>go</code> <code>get</code> command requires
that <a href="#mercurial">Mercurial</a> be installed locally. that <a href="#git">Git</a> be installed locally.
</p> </p>
<p> <p>
...@@ -292,22 +277,18 @@ that receives a message summarizing each checkin to the Go repository. ...@@ -292,22 +277,18 @@ that receives a message summarizing each checkin to the Go repository.
</p> </p>
<p> <p>
Bugs can be reported using the <a href="//code.google.com/p/go/issues/list">Go issue tracker</a>. Bugs can be reported using the <a href="//golang.org/issue/new">Go issue tracker</a>.
</p> </p>
<h2 id="releases">Keeping up with releases</h2> <h2 id="releases">Keeping up with releases</h2>
<p> <p>
The Go project maintains a stable tag in its Mercurial repository: New releases are announced on the
<code>release</code>.
</p>
<p>
The <code>release</code> tag refers to the current stable release of Go.
Most Go users should use this version. New releases are announced on the
<a href="//groups.google.com/group/golang-announce">golang-announce</a> <a href="//groups.google.com/group/golang-announce">golang-announce</a>
mailing list. mailing list.
Each announcement mentions the latest release tag, for instance,
<code>go1.4</code>.
</p> </p>
<p> <p>
...@@ -316,11 +297,13 @@ To update an existing tree to the latest release, you can run: ...@@ -316,11 +297,13 @@ To update an existing tree to the latest release, you can run:
<pre> <pre>
$ cd go/src $ cd go/src
$ hg pull $ git fetch
$ hg update release $ git checkout <i>&lt;tag&gt;</i>
$ ./all.bash $ ./all.bash
</pre> </pre>
Where <code>&lt;tag&gt;</code> is the version string of the release.
<h2 id="environment">Optional environment variables</h2> <h2 id="environment">Optional environment variables</h2>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment