为了账号安全,请及时绑定邮箱和手机立即绑定

确定 go.sum 中为什么存在每一行

确定 go.sum 中为什么存在每一行

Go
心有法竹 2022-05-23 16:42:21
这是我维护的项目的 go.sum 文件的片段。github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=github.com/golang/protobuf v1.3.5 h1:F768QJ1E9tib+q5Sc8MkdJi1RxLTbRcTf8LJV56aRls=github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk=据我所知,这个项目,以及它所依赖的其他项目,只使用 v1.3.5。有没有办法确定为什么 v1.3.1 和 v1.2.0 在 go.sum 文件中?例如,我可以go mod why ...用一些东西代替...来确定这些行出现的原因吗?我知道当我调用它们时项目没有使用它们import "github.com/golang/protobuf",但我想更好地理解工具链。
查看完整描述

2 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

如果你使用go mod graph,你可以看到完整的依赖列表,包括你的项目没有使用的版本。输出中的一些示例行go mod graph。


github.com/acme/project github.com/getsentry/sentry-go@v0.5.2-0.20200226112222-4dddaaad5cc5

...

github.com/getsentry/sentry-go@v0.5.2-0.20200226112222-4dddaaad5cc5 github.com/onsi/gomega@v1.7.1

...

github.com/onsi/gomega@v1.7.1 github.com/golang/protobuf@v1.2.0


查看完整回答
反对 回复 2022-05-23
?
MYYA

TA贡献1868条经验 获得超4个赞

我相信,这是由于 protobuf 具有的循环相互依赖性而发生的。

该问题已在此处解决:https ://github.com/golang/protobuf/issues/1204

但是,他们不会对此做任何事情,因为这不是技术问题,可以建造项目。


查看完整回答
反对 回复 2022-05-23
  • 2 回答
  • 0 关注
  • 181 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号