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

如何将Automake生成的distribution压缩包上传至GitLab Release?

解决GitLab Release上传Automake生成的Distribution包问题

方法一:手动上传

  1. 在本地项目目录执行make dist,生成包含configure脚本的压缩包(例如your-project-v1.0.tar.gz)。
  2. 进入GitLab项目的Releases页面,点击右上角的New release按钮。
  3. 填写发布所需的标签名称、版本号、发布描述等信息。
  4. 滚动到页面底部的Attach binaries区域,直接拖拽生成的压缩包到该区域,或点击Select file选择本地文件完成上传。
  5. 确认信息无误后点击Create release,用户即可在Release页面下载该distribution包。

方法二:通过GitLab CI/CD自动构建并上传

这种方式可实现打标签时自动生成distribution包并附加到Release,无需手动操作:

  1. 在项目根目录创建.gitlab-ci.yml文件,添加以下配置:
release:
  stage: deploy
  only:
    - tags  # 仅当推送Git标签时触发该任务
  before_script:
    # 安装构建所需的Autotools依赖(根据项目需求调整)
    - apt-get update && apt-get install -y autoconf automake make
  script:
    - autoreconf -i  # 若项目未预生成configure脚本,执行此命令生成(已存在可省略)
    - ./configure
    - make dist  # 生成distribution压缩包
    # 通过GitLab API将包上传到Release附件
    - |
      PROJECT_ID=$(curl --header "PRIVATE-TOKEN: $CI_JOB_TOKEN" "$CI_API_V4_URL/projects/$CI_PROJECT_PATH" | jq -r '.id')
      PACKAGE_NAME=$(ls *.tar.gz)
      curl --header "PRIVATE-TOKEN: $CI_JOB_TOKEN" \
           --upload-file "$PACKAGE_NAME" \
           "$CI_API_V4_URL/projects/$PROJECT_ID/releases/$CI_COMMIT_TAG/assets/links?name=$PACKAGE_NAME"
  dependencies: []
  1. 推送标签到GitLab(例如git tag v1.0 && git push origin v1.0),CI/CD会自动执行构建并将生成的包附加到对应Release中。

说明:你之前未找到上传入口,是因为Attach binaries区域位于Release创建页面的底部,需要滚动页面才能看到。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 01:51:01