Files
star-erp/.agents/workflows/now-push.md
sky121113 b57a4feeab [FIX] 嚴格限制 now-push 工作流的 main 合併鏈路
- 修改 now-push.md 確保 main 只能從 demo 合併
- 明列 dev -> demo -> main 的強制合併順序
2026-03-10 15:39:37 +08:00

35 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
description: 將目前的變更提交並推送至指定的遠端分支 (遵守專案規範)
---
# 快速推送工作流 (now-push)
本工作流旨在規範化 Git 提交與推送流程,確保符合專案的開發規範 (繁體中文、規範前綴) 與發布紀律 (Release Window)。
## 執行步驟
1. **讀取規範 (Mandatory)**
在執行任何 Git 操作前,**必須** 先讀取 Git 分支管理與開發規範:
`view_file` -> [Git SKILL.md](file:///home/mama/projects/star-erp/.agents/skills/git-workflows/SKILL.md)
2. **檢查與準備**
- 執行 `git status` 檢查目前工作目錄。
- 根據 **SKILL.md** 的規範撰寫繁體中文提交訊息。
3. **目標分支安全檢查**
- 嚴格遵守 **SKILL.md** 中的「分支架構」、「發布時段」與「強制分支明確指定」規則。
- 若未指明目標分支,主動詢問使用者,不可私自預設為 `main`
- **【最嚴格限制】**`main` 分支的程式碼**只能**, **必須**從 `demo` 分支合併而來。絕對禁止將 `dev` (或 `feature/*`) 直接合併進 `main`
4. **執行推送 (Push) 與嚴格合併鏈路**
- **若目標為 `dev`**:直接 `git push origin [目前分支]:dev` 或 commit 後 merge 到 dev。
- **若目標為 `demo`**:必須先確保變更已在 `dev` 且無衝突,然後 `git checkout demo && git merge dev && git push origin demo`
- **若目標為 `main`**
必須確保變更已經依照順序通過前置環境,嚴格執行以下流程(缺一不可):
1. `git checkout dev && git merge [目前分支] && git push origin dev`
2. `git checkout demo && git merge dev && git push origin demo`
3. `git checkout main && git merge demo && git push origin main`
*(就算遭遇衝突,也必須在對應的分支上解衝突,絕對不可略過 `demo` 直接 `dev -> main`)*
5. **後續同步 (針對 Hotfix)**
- 依照 **SKILL.md** 的「緊急修復流程(Hotfix)」:若有從 main 開出來的 hotfix 分支直接併回 main 的例外情況(需使用者明確指示),**必須**同步將 main 分支 merge 回 `demo``dev` 分支,維持全環境版本一致。