diff --git a/docs/_install-and-build/Installing-Geth.md b/docs/_install-and-build/Installing-Geth.md index 912e7bf923..cb78954eb8 100644 --- a/docs/_install-and-build/Installing-Geth.md +++ b/docs/_install-and-build/Installing-Geth.md @@ -3,12 +3,17 @@ title: Installing Geth sort_key: A --- -You can install the Go implementation of Ethereum using a variety of ways. These include installing it via your favorite package manager; downloading a standalone pre-built bundle; running as a docker container; or building it yourself. This document details all of the possibilities to get you joining the Ethereum network using whatever means you prefer. +You can install the Go implementation of Ethereum using a variety of ways. These include installing it via your favorite package manager; downloading a standalone pre-built bundle; running as a docker container; or building it yourself. This document details all of the possibilities to get you joining the Ethereum network using whatever means you prefer. A list of stable releases can be found [here](https://github.com/ethereum/go-ethereum/releases). {:toc} - this will be removed by the toc +## Updating Geth + +Updating go-ethereum is as easy as it gets. You just need to download and install the newer version of geth, shutdown your node and restart with the new software. +Geth will automatically use the data of your old node and sync the latest blocks that were mined since you shutdown the old software. + ## Install from a package manager ### Install on macOS via Homebrew @@ -168,8 +173,13 @@ With Go installed, you can download the project into you `GOPATH` workspace via: ```shell go get -d github.com/ethereum/go-ethereum ``` +You can also install specific versions via: -The above command does not build any executables. To do that you can either build one specifically: +```shell +go get -d github.com/ethereum/go-ethereum@v1.9.21 +``` + +The above commands do not build any executables. To do that you can either build one specifically: ```shell go install github.com/ethereum/go-ethereum/cmd/geth @@ -179,6 +189,8 @@ Or you can build the entire project and install `geth` along with all developer If you are using macOS and see errors related to macOS header files, install XCode Command Line Tools with `xcode-select --install`, and try again. +If you encounter `go: cannot use path@version syntax in GOPATH mode` or similar errors, enable gomodules using `export GO111MODULE=on`. + ### Windows The Chocolatey package manager provides an easy way to get the required build tools installed. If you don't have chocolatey, [follow the instructions](https://chocolatey.org) to install it first. @@ -246,3 +258,5 @@ make geth ``` These commands create a `geth` executable file in the `go-ethereum/build/bin` folder that you can move wherever you want to run from. The binary is standalone and doesn't require any additional files. + +If you want to build a stable release, the v1.9.21 release for example, you can use `git checkout v1.9.21` before running `make geth` to switch to a stable branch.