
Snapcraft 发布全流程从本地构建到 Snap Store 上架的 5 个关键动作【免费下载链接】reference面向开发者的技术速查清单Cheat Sheets集合整理常见技术、工具与开发流程帮助快速查阅关键信息提高开发效率。项目地址: https://gitcode.com/GitHub_Trending/referen/reference想把一个桌面工具真正发到 Snap StoreSnapcraft 发布流程其实就五步本地构建出.snap、装上去验证、上传、管好渠道、盯住指标再迭代。它把打包、签名、分发、自动更新串成一条线咱们按我平时发包的节奏走一遍每个节点讲清楚为什么这么跑、跑完你会看到什么。认证和命名这两步卡住的人最多先做这一步登录。终端会依次要邮箱、密码、TOTP 六位码走完凭据就写进本地。CI 里没法交互时直接--with credentials-filename把现成的凭据文件喂进去就行snapcraft login # 或无交互环境 snapcraft login --with credentials-filename登录成功后终端不再追问认证后面所有snapcraft子命令都能直接调用。名称是稀缺资源早点占住。公开名直接register不想让别人搜到就先加--private锁成私有免得名字被抢snapcraft register snap-name snapcraft register --private snap-name注意一下私有名之后要转公开得走工单所以发布前先把可见性想清楚。注册细节见 认证文档。先让它在本地活过来构建 安装 调试三连认证通了先别急着上传。在项目根目录构建让它按snap/snapcraft.yaml打包snapcraft跑完你应该能在目录里看到snap-name.snap这就是待发布的安装包。接着装上去验证。本地文件得加--dangerous否则它跑去商店校验会直接失败sudo snap install --dangerous your-snap-file.snap装完snap run snap-name能起服务、没有异常日志才算本地过关。崩溃又不好复现时挂 GDB 跟一下调用栈思路见 GDB 调试文档。upload 之后别停track / risk / branch 怎么排本地稳了再上传最小动作snapcraft upload my-snap.snap跑完终端会给出分配的 revision 号先记下来后面排查全靠它。想一步到位推 stablesnapcraft upload --releasestable my-snap.snap一次铺多个渠道也行逗号分隔snapcraft upload my-snap.snap --release channel-a,channel-b⚠️ 渠道其实是track/risk/branch三级语法比如2.0/candidate/my-branchtrack 对应大版本risk 决定灰度面。稳妥做法是先往 candidate 灰度验证 OK 再 promote 到 stable要回退就把旧 revision 重新 release 回 stable。推完查一下发布状态snapcraft status snap-namestatus输出里每个渠道对应的 revision 和发布时间一目了然。上传与渠道参数的完整说明见 发布文档。发完不是句号metrics 和热更新上架只是开始。下载量、活跃设备这些用 metrics 拉snapcraft metrics snap-name看到 install 数、last-week 趋势就能判断这版被多少人接住了还能按时间拆看增长是否异常。线上要修 bug路径还是老三步改代码 → 重新snapcraft构建 → 再upload --releasestable。商店会自动给已安装用户推更新不用你手动打补丁snapcraft upload updated-snap.snap --releasestable别急灰度期可以先只放 candidate等指标平稳再上 stable避免一次推给全量用户。把 stable 推到位后丢给同事试装一轮确认snapcraft status里 stable 轨道的 revision 已经是你要的那版后把 snap 的商店链接丢给同事试装收一轮真实反馈再进下一轮迭代。【免费下载链接】reference面向开发者的技术速查清单Cheat Sheets集合整理常见技术、工具与开发流程帮助快速查阅关键信息提高开发效率。项目地址: https://gitcode.com/GitHub_Trending/referen/reference创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考