アプデは慎重にやりたいので、
Golang のアプデと、
Go Modules の設定をそれぞれ順番にやりたい。
という人向け。
まず Go Modules を扱えるようにする
$ export GO111MODULE=on
# zsh の場合は .zshrc
$ vi .bashrc
# 最終行に追加
export GO111MODULE=on
プロジェクトを移動して Go Modules コマンドを叩く
$ cd /var/www/go/src/path/to/your/project
$ cp . /path/to/your/project
$ cd /path/to/your/project
# 勝手に dep で管理してたパッケージを良い感じにしてくれる
$ go mod init
go: creating new go.mod: module github.com/psychedelicnekopunch/go-sample
go: copying requirements from Gopkg.lock
# モジュールを整理する
$ go mod tidy
# dep 関連で使用してたファイルと vendor ディレクトリを削除
$ rm Gopkg.lock
$ rm Gopkg.toml
$ rm -rf vendor
ファイルを書き換える
自分のプロジェクトのファイルを import する時の記述が変わる。
// 今までの import 指定例
import "/your/project/psychedelicnekopunch/go-sample/xxx"
↓
// Go Modules 使用した時の指定例
import "github.com/psychedelicnekopunch/go-sample/xxx"
自分のプロジェクトのモジュール名を確認したい時
go.mod に書いてある。
「module xxxxx」がモジュール名。
$ cat go.mod
module github.com/psychedelicnekopunch/go-sample
go 1.12
require (
github.com/xxxxxx/xxxxx v0.0.1
)