發佈流程(TinyCorn Studio 標準)
當使用者說:「release」、「發佈 vX.Y.Z」、「推送新版本到 git」、「建置安裝檔 + 發佈」時適用。 執行完整流程,除非發現異常,否則不會回頭詢問每個步驟。
前置條件
- 儲存庫中有
CHANGELOG.md(遵循 Keep a Changelog),並且包含## [<version>] - <date>區段,對應即將發佈的版本。 - 儲存庫中有一個建置安裝檔的腳本(通常是使用
VERSION變數的make-app.sh)。 gh已登入並具有repo權限。- 工作目錄是乾淨的(所有功能都已提交)。
步驟
1. 提升版本號(單一來源)
sed -i '' -E 's/^(VERSION=).*/\1"0.5.0"/' make-app.sh
2. 建置安裝檔
./make-app.sh
ls -lh dist/
3. 更新 CHANGELOG.md
在開頭新增一個新的區段(遵循 Keep a Changelog):
## [0.5.0] - 2026-10-18
### Added
- ...
### Fixed
- ...
4. 提交
git add -A
git commit -m "Release v0.5.0"
5. 合併到 main 分支(如果當前在功能分支上)
git checkout main && git merge --ff-only <feature-branch>
6. 建立注釋標籤並推送
git tag -a v0.5.0 -m "v0.5.0"
git push origin main --tags
7. 建立包含安裝檔的 GitHub Release
撰寫越南語的發佈說明(摘要 + 「有什麼新功能」+ 「安裝」),儲存到暫存檔案,然後執行:
gh release create v0.5.0 dist/<App>-0.5.0.dmg \
--title "v0.5.0 — <摘要>" \
--notes-file /tmp/release_notes_v0.5.0.md
8. 驗證
gh release view v0.5.0
檢查:標籤指向正確的提交、資產已上傳、發佈說明顯示正確。
自動化腳本
此儲存庫中的 scripts/release.sh 為使用 make-app.sh 的 macOS 工具執行了步驟 1 到 7:
./scripts/release.sh 0.5.0
規則
- 請勿將安裝檔(DMG、ZIP)提交到儲存庫——僅將它們附加到 GitHub Release。
dist/必須在.gitignore中。 - CHANGELOG 和 README 必須在同一次發佈中更新。
- 標籤必須是注釋標籤,格式為
vX.Y.Z(SemVer)。 - 發佈說明使用越南語,如果應用程式未簽署,需包含如何打開應用程式的說明(右鍵 → 開啟)。
- 如果推送時遇到 403 錯誤:檢查
gh auth status,執行gh auth setup-git,確認 token 對該組織具有權限。