通过 HTTP 获取私有 GitLab 存储库

ctp*_*ctp 5 private http gitlab

我的计划是使用部署令牌来访问私有存储库(托管 GitLab)。

这个工作正常:

 git clone https://my-gitlab-deploy-token-user:my-gitlab-deploy-token-pass@gitlab.com/username/projectname.git
Run Code Online (Sandbox Code Playgroud)

访问 archive.tgz 失败并显示身份验证错误:

curl https://my-gitlab-deploy-token-user:my-gitlab-deploy-token-pass@gitlab.com/username/projectname/repository/archive.tar.gz?ref=master
Run Code Online (Sandbox Code Playgroud)

任何人都知道为什么令牌身份验证使用 Git 客户端的 HTTP 端点可以正常工作,但无法直接获取存档 tarball?

Xav*_*r D 1

部署令牌仅允许克隆存储库和读取 docker 注册表。

个人访问令牌允许“通过 HTTP 或 SSH 针对 Git”进行身份验证。注意,它们仅限于以下内容:API、RSS、Registry。由于gitlab 博客上的“令牌范围执行不当”,有关于此限制的注释。