経緯
先日Goで開発を行なっていた所、
自作したモジュールのプログラムを修正して更新しようとしました。
しかし、
最新のコミットのモジュールをgo getしようとしても、
一向にgo.modのバージョンが書き変わりません。
go env GOPATH
で本体の場所を確認。
↓
コードを確認
↓
やっぱりプログラム変わっていない。。
試した事
go clean -modcache
でモジュールをクリア
↓
対象のモジュールをgo getし直し
↓
修正前のモジュールを取得してきているようで、
変化なし。。
@latest
を付けてもダメ❌
@HEAD
でもダメ❌
go get -u
でもダメ❌
go install
でもダメ❌
で暗礁に乗り上げてしまっていました。
原因
調べていると、
proxyがモジュールの新規リリースを認識していない事が原因だと判明。
※明確な公式のソースは未確認です。
※個人ブログのtipsにより確認しました。
(記事下にリンクあり)
解決する為にやった事
対象のモジュールの最新のバージョンを確認
GOPROXY=direct go list -m github.com/hoge/fuga/go/app/rooting@HEAD
github.com/hoge/fuga/go/app/rooting v0.0.0-20221010092340-3qc15c3ef11a
↓
取得したバージョンを指定してgo get
go get github.com/hoge/fuga/go/app/rooting@v0.0.0-20221010092340-3qc15c3ef11a
↓
書き変わった
go: upgraded github.com/hoge/fuga/go/app/rooting v0.0.0-20221010091705-5961bda086fb => v0.0.0-20221010092340-3qc15c3ef11a
あとがき
完全にハマってしまい、
開発が滞りました。
この問題について、
さらに詳細なソースが分かる方がいらっしゃれば、
ご教示いただけると幸いです。
参考にさせていただいた記事
https://www.kaoriya.net/blog/2020/06/16/
https://text.baldanders.info/golang/mirror-index-and-checksum-database-for-go-module/