Files
star-erp/.agents/rules/git-workflow.md

51 lines
2.4 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.
---
name: Git 分支管理與開發規範
description: 強制執行 main 分支保護與開發分支流程,確保主分支僅用於 Bug 修正與版本釋放。
---
# Git 分支管理與開發規範 (Git Workflow)
為了確保 `main` 分支的穩定性,所有開發者與 AI 助手必須嚴格遵守以下分支管理與合併規範。
## 1. 分支架構與用途
| 分支類型 | 命名規範 | 描述 | 合併目標 |
| :--- | :--- | :--- | :--- |
| **Main (穩定版)** | `main` | 生產環境分支,僅存放穩定、已測試的代碼。**禁止直接開發新功能**。 | N/A |
| **Develop (開發版)** | `dev` | 日常開發整合分支,所有變更在此測試。 | `main` |
| **Feature (新功能)** | `feature/*` | 用於開發新功能。 | `dev` |
| **Hotfix (緊急修正)** | `hotfix/*` | 用於修復 `main` 分支的緊急 Bug。 | `main` & `dev` |
| **Bugfix (修復)** | `bugfix/*` | 用於修復 `dev` 分支中的 Bug。 | `dev` |
## 2. Main 分支約束條款 (Mandatory)
1. **禁止隨意上功能**`main` 分支僅接受從 `dev` 合併過來的穩定版本,或用於修復生產環境 Bug 的 `hotfix/*` 分支。
2. **新功能合併時段限制**
- **允許時段**週一至週四12:00中午之前。
- **非允許時段**:若在上述時段以外(如週五、週末或下班時間)欲合併新功能至 `main`**AI 助手必須主動提醒風險**,並取得使用者明確同意後方可執行。
3. **新功能隔離**:新功能開發必須在單獨的 `feature/*` 分支進行,並先合併至 `dev` 驗證。
4. **禁止直接 Commit**:嚴禁直接在 `main` 進行提交,必須透過合併流程並確保已測試。
## 3. 開發流程 (Standard Operating Procedure)
### 開發新功能
1.`dev` 建立 `feature/功能名稱`
2. 開發完成後合併至 `dev`
### 修復 Main Bug (Hotfix)
1.`main` 建立 `hotfix/Bug描述`
2. 修復後合併回 `main`,並**務必**同步合併至 `dev`
## 4. 提交訊息規範 (Commit Messages)
提交訊息必須包含以下前綴:
- `[FIX]`:修復 Bug。
- `[FEAT]`:新增功能。
- `[DOCS]`:文件更新。
- `[STYLE]`UI/CSS/格式調整。
- `[REFACTOR]`:程式碼重構。
---
> [!IMPORTANT]
> 身為 AI 助手 (Antigravity),我在接收到任務時會優先判斷其性質。若為「新功能」且操作分支為 `main`,應主動提醒並引導切換至正確的分支開發。