【发布时间】:2021-03-19 16:03:24
【问题描述】:
我有一个项目要做,我们正在使用 Bitbucket。所以我们所有的回购都是这样的:
bitbucket.org/company/project这里没有什么新鲜事。
我创建了一个名为 go-tools 的存储库,他的模块名称是 bitbucket.org/company/go-tools,他的路径是 bitbucket.org/company/go-tools
按照这个medium post,我可以达到go mod tidy
package whatever
import (
"bitbucket.org/company/go-tools"
"bitbucket.org/company/go-tools/env"
// and so on ...
)
当我尝试将“bitbucket.org/company”替换为“company.com”时出现问题,因为我们希望使用我们的公司名称而不是 bitbucket。
所以我的模块名称变为company.com/go-tools 而不是bitbucket.org/company/go-tools
我的进口变成了:
package whatever
import (
"company.com/go-tools"
"company.com/go-tools/env"
// and so on ...
)
我已将我的 GOPRIVATE 设置为使用 bitbucket,并将 git 配置为使用 bitbucket 而不是 company.com
git config --global url."https://{username}:{app password}@bitbucket.com/company".insteadOf "https://company.com"
go env -w GOPRIVATE=bitbucket.org/company
从那里我只收到一个 404 错误,告诉我找不到我的包裹。
有人知道为什么吗?我是不是误会了什么?
注意:我也read this
【问题讨论】:
-
您是否在详细模式下运行
go get和go mod download?如果是 - 你能提供输出吗? -
嗨@OlegButuzov,感谢您的回复这里是日志。它似乎甚至没有看 bitbucket
-
?> go env GOPRIVATE bitbucket.org/company ?> go mod download -x company.com/go-tools@gomodtest # get proxy.golang.org/company.com/go-tools/@v/gomodtest.info # get proxy.golang.org/company.com/go-tools/@v/gomodtest.info: 410 Gone (0.129s ) # get company.com/go-tools?go-get=1 # get company.com/go-tools?go-get=1: 404 Not Found (0.784s) go mod 下载:company.com/go-tools@gomodtest:无法识别的导入路径“company.com/go-tools”:读取company.com/go-tools?go-get=1 : 404 未找到
-
在 go.mod 中使用
replace指令,而不是在 git 配置中使用重定向。
标签: go bitbucket go-modules