我已经在 Vercel 上部署了我的 Golang sls,现在我正在尝试添加我的一个私人仓库作为依赖项,但是在部署期间我看到了以下错误
Error: Command failed: go mod tidy
go: github.com/user/repo@v0.0.1: reading github.com/user/repo/go.mod at revision v0.0.1: unknown revision v0.0.1
修订版/标签存在,我可以从本地设置和测试所有内容。但是我在任何 vercel docs 中都没有看到如何配置 Vercel 来访问这些私有存储库。 Vercel 拥有对我的 GitHub 私有存储库(依赖项)的读取权限。
答案 0 :(得分:1)
Go 在幕后使用 git 来拉取依赖项。您需要授予 git 访问您的私有存储库的权限。
在像 TravisCI
这样的构建系统上,授予此类访问权限的典型方法是通过访问令牌和 .netrc
文件,通过 Travis
存储的环境变量填写秘密令牌:< /p>
# .netrc
## generate token with https://help.github.com/articles/creating-an-oauth-token-for-command-line-use
machine github.com login <token>
编辑:
来自Vercel Docs:
<块引用>要使用 go get 安装私有包,请在 vercel.json 中将 GIT_CREDENTIALS 定义为构建环境变量。 ... 使用 GitHub,您将需要创建一个具有权限的个人令牌 访问您的私人存储库。
{
"build": {
"env": {
"GIT_CREDENTIALS": "https://username:token@github.com"
}
}
}