前提
バージョンがgo1.11以上じゃないとmodのsubcommandが無いっぽい
go1.10
$ go version
go version go1.10 darwin/amd64
$ go help
The commands are:
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
bug start a bug report
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
go1.11
$ go version
go version go1.11.4 linux/amd64
$ go help
The commands are:
bug start a bug report
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages or modules
mod module maintenance ←これ
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
補足作業メモ
下記コマンドで確認してみた所、1.10までのバージョンしかインストール出来なかった。
$ goenv install -l
私はbrewでgoenvをインストールしたのでアップグレードが必要。
$ brew upgrade goenv
$ goenv install 1.11.4
$ goenv global 1.11.4
$ goenv version
1.11.4
あとはIDEのGOROOTを .goenv ディレクトリ内に新しくインストールされたフォルダを指定する。
go moduleの使い方
コマンドで実行する場合
$ export GO111MODULE=on
$ go mod init
実行するとgo.modというファイルが出来る。
buildするとgo.sumが出来る
Dockerにする場合
Dockerファイルに下記のような感じで書いてあげれば依存パッケージがダウンロードされる
COPY go.mod .
COPY go.sum .
RUN go mod download