no matching versions for query "vx.x"
原因是"vx.x"不符合semantic version,一般tag格式为vx.x.x
,还有pre-release格式,具体可参考 https://golang.org/ref/mod#versions
unknown revision vx.x.x
没有找到对应版本,建议查看pkg中是否有相对应版本,如git tag,branch
module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2
major版本有变更,版本号vx.x.x
的第一个版本数字,通常情况下主版本如果有升级,Go mod
建议pkg
带major版本前缀,例如某个引用仓库为v2.1.2的话,Go mod
中引用需要更改为$pkg/v2
,还有另一种解决方式,在Go mod
的包引用版本中携带+incompatible
后缀来声明不兼容。
used for two different module paths
导致报这个错误有两种方式,一个是Go mod
中使用replace
指令替换当前包为另一个不同名称的包名,例如 replace example.com/a => example.com/b v0.0.0
,具体可见issue 34650 ,另一个则是将两个不同的包替换成本地包,具体可见issue 26607