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

使用curl向GitLab指定Release资产上传Zip包后无法显示,求排查

问题原因及解决方法

你当前用的/uploads接口是GitLab的项目通用文件上传接口,上传的文件只会存到项目的通用存储里,不会自动关联到指定Release的资产列表中,这就是为什么你在Release页面看不到文件的原因。

要把文件作为Release的资产上传,得用专门的Release资产接口,分两种场景操作:

场景1:给已存在的Release添加资产

使用该接口需要指定目标Release的标签名(或Release ID):

curl --request POST \
  --header "PRIVATE-TOKEN: <你的令牌>" \
  --form "file=@DemoFile.zip" \
  "https://my.gitlab.com/api/v4/projects/<你的项目ID>/releases/<Release标签名>/assets/links"

注意:将<Release标签名>替换为你创建Release时使用的标签(比如v1.0.0)

场景2:创建Release时直接关联资产

如果是刚创建Release,也可以在创建阶段直接附带资产,这里可以复用你之前通过/uploads接口得到的文件完整URL:

curl --request POST \
  --header "PRIVATE-TOKEN: <你的令牌>" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Release名称",
    "tag_name": "v1.0.0",
    "assets": {
      "links": [
        {
          "name": "DemoFile.zip",
          "url": "https://my.gitlab.com/myName/myProjectName/uploads/<之前上传得到的随机字符串>/demoFile.zip"
        }
      ]
    }
  }' \
  "https://my.gitlab.com/api/v4/projects/<你的项目ID>/releases"

执行完对应命令后,刷新Release页面就能在资产列表里看到DemoFile.zip了。

内容的提问来源于stack exchange,提问作者Willy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 10:05:13