我有一个一直托管在非模块存储库中的小型库,但现在我想将其转换为Go模块.
我成功地执行了以下操作:
go mod init
go mod tidy
创建go.mod
和go.sum
文件时没有错误,库仍然通过测试.
之前的版本是v2.0.0
,所以我将版本增加到v3.0.0
,并在go.mod
中的模块名称的末尾添加了/v3
.从我在网上看到的情况来看,这就是所需要的一切.
我的go.mod
个文件如下所示:
module tssgit.reyrey.com/teschste/go-utils/v3
go 1.19
require (
github.com/lib/pq v1.10.9
golang.org/x/text v0.9.0
)
然后我把这个库发布到我们内部的Git服务器上,我想我已经准备好了.
当我try 将该库添加到新的围棋模块项目中时,收到以下消息:
Installing: tssgit.reyrey.com/teschste/go-utils/v3
Installing dependency: tssgit.reyrey.com/teschste/go-utils/v3
go: module tssgit.reyrey.com/teschste/go-utils@upgrade found (v2.0.0+incompatible), but does not contain package tssgit.reyrey.com/teschste/go-utils/v3
Failed to add dependencies: exit status 1
我发现,如果我将v3.0.0
发布到一个新路径(tssgit.reyrey.com/teschste/go-utils2
),我能够成功地将它添加到我的新项目中,即使我再次递增了主版本.
我是不是错过了一些可以让我继续以同样的方式发布的东西,或者这只是你不能做的事情?
如有任何帮助,我们将不胜感激!