git版本发布

3.11、版本发布

​ 通常叫:

  • 打版本标签:tag
  • 创建发布版本:Release
  • 上传编译产物:把 Qt 编译出的 exe、压缩包等作为 release 附件
1、基本概念
1、Git tag

比如:

bash 复制代码
git tag -a v1.0.0 -m "first release"
git push origin v1.0.0

这表示给当前提交打一个版本号 v1.0.0

2. Release

GitHub / Gitea / GitLab 上,Release往往是基于某个 tag 创建的"发布页"。

可以在这个页面里:

  • 写版本说明
  • 说明更新内容
  • 上传附件
  • 让别人直接下载程序

比如上传:

  • MyApp-windows-x64.zip
  • MyApp.exe
  • README.txt
  • sha256.txt
2、发布方式
  1. 本地写好代码并提交
  2. 打一个 tag,如 v1.0.0
  3. 推送 tag 到远程
  4. Gitea/GitHub 上创建 Release
  5. 上传编译好的可执行文件或压缩包

详细步骤:

  1. 提交当前源码

    bash 复制代码
    git add .
    git commit -m "release: prepare v1.0.0"
    git push origin main
  2. 打标签

    推荐使用带说明的注释标签:

    bash 复制代码
    git tag -a v1.0.0 -m "Release version 1.0.0"

    查看标签:

    bash 复制代码
    git tag

    查看标签详情:

    bash 复制代码
    git show v1.0.0
  3. 推送标签到远程

    bash 复制代码
    git push origin v1.0.0

    如果想一次把所有本地 tag 都推上去:

    bash 复制代码
    git push origin --tags
  4. 准备可执行文件

    一般有两种发布方式:

    • 方式 A:直接上传 exe + 依赖目录

      比如整理成:

      bash 复制代码
      MyApp_release/
      ├─ MyApp.exe
      ├─ Qt6Core.dll
      ├─ Qt6Gui.dll
      ├─ Qt6Widgets.dll
      ├─ platforms/
      │  └─ qwindows.dll
      └─ ...

      然后压缩成:

      bash 复制代码
      MyApp-windows-v1.0.0.zip
    • 方式 B:使用 windeployqt 自动收集依赖

      这是 Qt Windows 发布最常用的方法。

      例如:

      bash 复制代码
      windeployqt MyApp.exe

      它会自动把依赖 dllplatforms 插件等拷贝到 exe 所在目录。

      然后你把整个目录打包:

      bash 复制代码
      MyApp-windows-v1.0.0.zip

      这个更标准。

  5. 创建 Release

    进入仓库页面后:

    ReleasesNew Release

    然后填写:

    • Tagv1.0.0
    • Titlev1.0.0
    • Description:写更新说明
    • Attachments:上传你的 zip / exe

    例如说明可写:

    markdown 复制代码
    ## 更新内容
    - 完成主界面
    - 修复设置页面闪退问题
    - 优化图片加载速度
    
    ## 下载说明
    请下载:
    - MyApp-windows-v1.0.0.zip

    最后点发布即可。

3、命名建议

建议你的发布文件命名规范一点,例如:

bash 复制代码
项目名-平台-架构-版本.zip

例如:

bash 复制代码
PhotoSorter-windows-x64-v1.0.0.zip
PhotoSorter-linux-x64-v1.0.0.tar.gz
PhotoSorter-source-v1.0.0.zip
相关推荐
m4Rk_1 小时前
【论文阅读】Agent 记忆机制(41):Agentic Plan Caching——将历史执行轨迹转化为可复用的计划记忆
论文阅读·人工智能·学习·开源·github
本地化文档2 小时前
poethepoet-docs-l10n
python·github·gitcode·sphinx
晴天小庭2 小时前
DeepSeek Harness纯净桌面版(基于Tauri)开源,欢迎品鉴
github
苏灿烤鱼4 小时前
一套进程代替八件套,桌面更稳还是单点更大
linux·github·shell
抓不住时间的沙4 小时前
butterfly主题美化,打造属于自己的个性博客
java·开发语言·前端·javascript·node.js·github
wangruofeng4 小时前
GitHub 趋势洞察 2026-08-10~16:dsh 加冕周,11.3 万星之下生态完成分层
github·aigc·ai编程
知兀2154 小时前
hugo + PaperMod搭建博客
github
逛逛GitHub5 小时前
GLM-5.3 来了,编程能力提升 50%,两周发现 2404 个漏洞。
github