Help us understand the problem. What is going on with this article?

fishでgoenv 2.0の環境構築

環境

OS:Mac

fish -v
fish, version 3.0.0
goenv
goenv 2.0.0beta11

構築手順

goenvを公式リポからダウンロード

※現状、brewだと1.12.3が最新だったので、公式リポから2.0をダウンロードしよう。

git clone https://github.com/syndbg/goenv.git $HOME/.goenv

環境変数の設定

公式の設定はbashとzshなので、fishに置き換えて設定しよう。

# goenvを利用する為に必要なPath
set -x GOENV_ROOT $HOME/.goenv
set -x PATH $GOENV_ROOT/bin $PATH
# goenv init処理(go envなど生成される)
status --is-interactive; and source (goenv init -|psub)
# $GOROOT/bin にあるgoのバイナリ, $GOPATH/bin にあるリポジトリのバイナリなどにpathを通してあげる。
set -x PATH $GOROOT/bin $PATH
set -x PATH $GOPATH/bin $PATH

※補足

3行目の設定値について

goenv init
# Load goenv automatically by appending
# the following to ~/.config/fish/config.fish:

status --is-interactive; and source (goenv init -|psub)

環境設定読み込み

まだGoをインストールしてないので、GOENV_ROOTとPATHを設定する。

source ~/.config/fish/config.fish

goのインストール

# インストールできるバージョンを一覧表示
goenv install -l
# インストールしたいバージョンを指定
goenv install 1.12.0
# 利用するバージョンの指定(goenv local範囲を除く)
goenv global 1.12.0 

環境設定再読み込み

go envの設定を利用して$GOPATH/bin$GOROOT/binのPATHを通してあげる。

source ~/.config/fish/config.fish
go env
GOPATH="~/go/1.12.0"
GOROOT="~/.goenv/versions/1.12.0"

確認

go version
go version go1.12 darwin/amd64

リポジトリのダウンロード

ディレクトリ構成について

goenv 2.0以降ではGoのバージョン毎にリポジトリを管理するのがデフォルトになっていた。
リポジトリは$GOPATH配下に以下のように配置する。

$GOPATH/1.12.0/src/github.com/ユーザ名/リポジトリ名

go envでカレントのバージョンのフォルダにダウンロードできる。

go get -u "github.com/ユーザ名/リポジトリ名"

参考

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away