我以前可以通过以下方式安装一个go二进制包:
go get -u github.com/some_user/some_project现在它确实起作用了,在googling搜索之后,我学到了另一种方法:
go install github.com/some_user/some_project@latest到目前为止还不错,但是现在我把一个更改推到主分支,我希望再次运行相同的go安装命令来更新已安装的二进制文件,但它没有。我想知道go get -u与go install的等效性是什么。
发布于 2022-08-01 08:09:12
其实不是因为github延迟。Github是一个git存储库,一旦您推送您的更改,您的代码库就会立即更新。这是因为goproxy。Goproxy是go包的集中式存储库,这是为了避免(尽可能多地)手动更新代码库的版本时出现的一些问题,以及许多其他原因,我不打算深入了解这些问题,阅读更多的这里。goproxy不会实时地对每个代码库进行索引,因此您无法看到所做的更改。实际上,您可以告诉go不要使用go代理,并直接使用github:
GOPROXY=direct go get -u github.com/some/package这里的直接意思是在这里直接使用github,它可以是任何其他存储库。
发布于 2022-08-01 07:27:39
看起来这是一个github延迟,过了一段时间后,运行go安装再次工作。
https://stackoverflow.com/questions/73190155
复制相似问题