--- name: Git 分支管理與開發規範 description: 強制執行 main 分支保護與開發分支流程,確保主分支僅用於 Bug 修正與版本釋放。 --- # Git 分支管理與開發規範 (Git Workflow) 為了確保系統穩定性與發布紀律,所有開發者與 AI 助手必須嚴格遵守以下環境發布流程與時段限制。 ## 1. 分支架構與環境定義 | 分支 | 環境 | 用途描述 | 合併來源 | | :--- | :--- | :--- | :--- | | **`dev`** | 本機開發 | 日常開發與功能實作。 | `feature/*` | | **`demo`** | 測試/預佈署 | 鏡像生產環境。用於正式上線前的最終驗證。 | `dev` | | **`main`** | 生產環境 | 正式版本分支。僅存放透過 `demo` 驗證後的代碼。 | `demo` | ## 2. 發布時段與約束 (Release Window) ### Main 分支發布限制 (Mandatory) 1. **標準發布時間**:週一至週四,**12:00 (中午) 之前**。 2. **非標準時段提醒**:若於上述時段以外(週五、週末、國定假日或下班時間)欲合併至 `main`: - AI 助手**必須攔截並主動提示風險**(例如:週末災難風險)。 - 必須取得使用者明確書面同意(如:「我確定現在要上線」)方可執行。 3. **合併鏈路**:一般功能/修正必須先上 `demo` 測試。`main` 的程式原則上應從 `demo` 分支合併而來。 ## 3. 開發與修復流程 (SOP) ### 標準開發流程 1. `feature/*` -> `dev` (隨時合併,主要測試點)。 2. `dev` -> `demo` (隨時合併,進行類生產環境測試)。 3. `demo` -> `main` (僅限允許時段進行,正式上線)。 ### 緊急修復流程 (Hotfix) 1. 直接從 `main` 建立 `hotfix/*` 分支進行修復。 2. 修復完成並通過測試後合併回 `main`。 3. **重要同步**:修復後的程式碼必須立即合併回 `demo` 與 `dev`,確保各環境修復同步。 ## 4. 提交訊息規範 (Commit Messages) 提交訊息必須包含以下前綴: - `[FIX]`:修復 Bug。 - `[FEAT]`:新增功能。 - `[DOCS]`:文件更新。 - `[STYLE]`:UI/格式調整。 - `[REFACTOR]`:重構。 --- > [!IMPORTANT] > 身為 AI 助手 (Antigravity),我會監控合併對象與當前時間。若您的命令涉及合併至 `main` 且不在允許時段內,我會優先進行安全提醒。