Golangのパッケージ管理

最終更新日
公開日

完全に理解した()

目次

go install foo@bar

とすると,$GOBIN (= $GOPATH/bin) にパッケージがインストールされる.

例えば,kind の場合,

go install sigs.k8s.io/kind@v0.26.0

とすれば,2025-01-20 時点の最新版をインストールできる.

しかし,動作確認してみると,

$ kind version
Command 'kind' not found

となる.

この原因は $HOME/.bashrcexport PATH=$PATH:$(go env GOPATH)/bin として GOBIN にパスを通していなかったこと.(勝手に通してくれていると勘違いしていた)(ちゃんとドキュメントを読もうね)

ちなみに,古いバージョンがあっても新しくインストールしたバージョンで上書きされるので,古いのを消す必要は無い.

(ちなみに)2^2 ,ちょっとだけ昔のバージョンのパッケージを使いたくなった場合は,

go run foo@old-var <cmd>

のようにできるので,基本的にはlatestをinstallしておけば良い.