我正在尝试将私有存储库安装为 golang 模块。阅读微软博客文章后。我试图在本地进行。我已经更新了本地 .gitconfig[url "git@ssh.dev.azure.com:v3/<my org>/"] insteadOf = https://dev.azure.com/<my org>/也导出到我的环境:export GOPRIVATE=dev.azure.com/<my org>/存储库包含一个go.mod具有以下标头的文件:module dev.azure.com/<my-org>/<project>/<repo>go 1.18当我尝试通过以下方式安装模块时:go get -v dev.azure.com/<my-org>/<project>/<repo>.git@develop它失败了:go: dev.azure.com/<my-org>/<project>/<repo>.git@v0.0.0-20220827174211-d4e6ad2f92b0: parsing go.mod: module declares its path as: dev.azure.com/<my-org>/<project>/<repo> but was required as: dev.azure.com/<my-org>/<project>/<repo>.git但是,如果我在最后删除.git它,它会失败:203非权威信息导入私有模块的合适方式是什么
1 回答
眼眸繁星
TA贡献1873条经验 获得超9个赞
删除 .git 是第一步。
golang/go
issue 41030中提到了 203 错误,它重定向到issue 28236。
这包括:
如果您是由于与 Azure DevOps 存储库同步的身份验证问题而来到这里
go get
,例如在构建机器上,那么您可以在文件中设置一个简单的 git 凭据帮助gitconfig
程序:例如:[credential "https://dev.azure.com"] helper = "/bin/sh /etc/azure-devops-helper.sh"用类似的
azure-devops-helper.sh
东西#!/bin/sh echo username=$USERNAME echo password=$AZURE_DEVOPS_TOKEN其中包含用户名和 PAT 的环境变量。
事实证明,这比为 azure repos 切换到 SSH 更可靠。
并且,对于任何401 Gone
错误:
需要明确告知
GOPRIVATE
不要检查dev.azure.com
.看来真的仅此而已。
- 1 回答
- 0 关注
- 88 浏览
添加回答
举报
0/150
提交
取消