Go Mod引入fork的仓库

环境:

Golang v1.17.5

在一人项目中使用了第三方库的【github.com/gohouse/gorose/v2】 发现有一此定制化的需求要修改,就fork这个仓库,地址为【http://git.ship56.net/rojers/gorose.git】导入包,对应【git.ship56.net/rojers/gorose/v2】

直接修改import部分就报错信息如下:

XXXXXXXXXX: git.ship56.net/rojers/gorose/v2@v2.1.14: parsing go.mod:
        module declares its path as: github.com/gohouse/gorose/v2
                but was required as: git.ship56.net/rojers/gorose/v2

网上找了资料后,发现不能是直接修改 import 部分的,需要修改 go.mod

修改如下:

replace  github.com/gohouse/gorose/v2 v2.1.12 => git.ship56.net/rojers/gorose/v2 v2.1.14 // indirect

注意:网上的资料都是说打标签啥的,感觉没用

个人操作步骤:

检出fork的仓库,添加自己需要的代码,发布到仓库后,并打上一个新的tag

然后在其它项目中按如上的方法修改 go.mod 就可以了!