You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从自托管GitLab实例下载Git LFS文件?

解决自托管GitLab实例通过API下载Git LFS文件的问题

你拿到的返回内容是Git LFS的指针文件,这是正常情况——标准文件API不会自动解析LFS指针,必须走LFS专属的API流程。

GitLab LFS批量请求的正确URL格式

你参考的GitHub LFS URL不适用于GitLab,自托管GitLab的LFS批量请求地址应为:

https://{instance}/api/v4/projects/:id/lfs/objects/batch

这里的:id是你的项目ID(可在GitLab项目主页「设置」→「通用」中查看,或通过GitLab API获取),无需替换organization或repository字段,直接用项目ID即可。

完整的LFS文件下载步骤

  • 提取LFS指针信息:用原标准文件API请求拿到指针内容后,从中提取oid(即sha256:{sha}部分)和size数值。
  • 发起批量请求获取下载链接:向上述GitLab LFS批量URL发送POST请求,请求体为JSON格式:
    {
      "operation": "download",
      "objects": [
        {
          "oid": "sha256:{你提取的sha值}",
          "size": {你提取的size数值}
        }
      ]
    }
    
    请求头需携带GitLab访问令牌:Authorization: Bearer {你的访问令牌},令牌需具备项目的read_repository权限。
  • 下载实际文件:批量请求的响应中会包含LFS对象的download→href地址,直接GET该地址即可获取实际的LFS文件。

关键注意事项

  • 确保自托管GitLab实例已启用LFS功能(管理员可在实例设置中开启)。
  • 访问令牌权限需足够,至少拥有仓库读取权限。

内容的提问来源于stack exchange,提问作者Dr. Ske

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 00:40:44