結論
環境変数のGOPROXY
にdirect
を指定して取得する。
GOPROXY=direct go get hoge/fugo
GOPROXY=direct go get ./...
これはなに?
GithubなどのリポジトリでGoのモジュールを管理することが多いと思います。
個人開発、組織内開発では明示的なリリース管理はせずに、モジュールを使用するソースコード側では最新のコミットを参照することも多いと思いますが、その際に常に最新のモジュールを反映する方法です。
背景
go.modに記述されているモジュールのバージョンをアップデートする際、どのように操作しますか?
おそらくぱっと考えるのはgo get hoge/fugo
、go get ./...
などだと思います。
ただデフォルトの設定だとModule Mirrorと呼ばれるキャッシュプロキシーから取得することになり、pushされたばかりのcommitは反映されていないことが多いです。
なので環境変数でキャッシュプロキシーを使わない指定を明示的に行うことで、最新のcommitを取得できるようにしています。
注意
プロキシーを使わない分取得にかかる時間は長くなるので、使い所は考えたほうがいいと思います。