Compare commits

..

3 Commits

Author SHA1 Message Date
dd2e63c08b [DOCS] 移除冗餘規範文件並同步開發規則至所有分支
All checks were successful
ERP-Deploy-Production / deploy-production (push) Successful in 1m1s
ERP-Deploy-Demo / deploy-demo (push) Successful in 1m22s
2026-03-05 08:53:41 +08:00
b498fe93ff [DOCS] 更新 Git 規範:加入新功能合併至 main 的時段限制 2026-03-05 08:51:43 +08:00
6b324b4bd0 [DOCS] 將 Git 規範整合至開發 Rules 並移除重複文件 2026-03-05 08:49:05 +08:00
3 changed files with 50 additions and 78 deletions

View File

@@ -0,0 +1,50 @@
---
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`,應主動提醒並引導切換至正確的分支開發。

View File

@@ -1,33 +0,0 @@
# Star ERP 開發手冊
## 專案概述
- 技術棧Laravel 12, React, Inertia.js, Tailwind CSS.
- 架構:模組化單體架構 (Modular Monolith).
## Git 分支管理規範 (嚴格遵守)
為了確保專案穩定性,請遵循以下分支流程:
1. **Main 分支限制**
- `main` 分支僅限 Bug 修正 (`hotfix/*`) 與版本發布。
- **禁止直接在 `main` 開發新功能**
2. **開發流程**
- **新功能**:一律在 `feature/*` 分支開發,合併至 `dev` 測試。
- **修復 Bug (開發中)**:在 `bugfix/*` 分支開發。
- **緊急修復 (生產環境)**:從 `main` 建立 `hotfix/*` 分支,修復後合併回 `main``dev`
3. **提交前標籤**
- `[FIX]`Bug 修正
- `[FEAT]`:新功能
- `[DOCS]`:文件更新
## 開發指令
- 啟動環境:`./vendor/bin/sail up -d`
- 執行測試:`./vendor/bin/sail artisan test`
- 執行 Artisan 命令:`./vendor/bin/sail artisan ...`
- 前端編譯:`./vendor/bin/sail npm run dev`
## 程式碼風格
- PHP遵循 PSR-12 規範。
- React使用 Functional Components 與 Hooks統一使用 Lucide-react。
- 翻譯:所有的說明、註解與 docstring 請使用**繁體中文**。
詳情請參閱 [GIT_WORKFLOW.md](./GIT_WORKFLOW.md)。

View File

@@ -1,45 +0,0 @@
# Git 分支管理與開發規範 (Star ERP)
為了確保 `main` 分支的穩定性,本專案即日起實施以下分支管理約束。
## 1. 分支定義
| 分支類型 | 命名規範 | 描述 | 合併目標 |
| :--- | :--- | :--- | :--- |
| **Main (穩定版)** | `main` | 生產環境分支,僅存放**穩定、已測試**的代碼。 | N/A |
| **Develop (開發版)** | `dev` | 日常開發整合分支,所有功能在此測試。 | `main` (週期性) |
| **Feature (新功能)** | `feature/*` | 用於開發新功能。 | `dev` |
| **Hotfix (緊急修正)** | `hotfix/*` | 用於修復 `main` 分支的緊急 Bug。 | `main` & `dev` |
| **Bugfix (一般修復)** | `bugfix/*` | 用於修復 `dev` 分支中的 Bug。 | `dev` |
## 2. Main 分支約束條款
1. **禁止直接提交**:嚴禁直接在 `main` 分支進行 `git commit`。所有變更必須透過 Pull Request (PR) 或 Merge Request。
2. **功能凍結**`main` 分支僅接受 `hotfix/*` 或從 `dev` 合併過來的穩定版本。**嚴禁將未經驗證的新功能 `feature/*` 直接合併至 `main`**。
3. **強制審閱**:所有進入 `main` 的合併請求必須經過至少一人審閱 (Code Review) 且通過自動化測試 (CI)。
## 3. 開發流程 (Workflow)
### 開發新功能
1. 從 `dev` 建立 `feature/your-feature-name`
2. 完成開發後,發起 PR 合併至 `dev`
3. 在 `dev` 環境進行測試。
### 修復 Main 的 Bug (Hotfix)
1. 從 `main` 建立 `hotfix/bug-description`
2. 修復完畢後,發起 PR 合併至 `main`
3. **重要**:合併至 `main` 後,必須同時將該修復合併回 `dev`,以防 Bug 在下次發布時再次出現。
## 4. 提交訊息規範 (Commit Messages)
請遵循以下前綴標籤:
- `[FIX]`:修復 Bug。
- `[FEAT]`:新增功能。
- `[DOCS]`:文件更新。
- `[STYLE]`:調整格式(不影響邏輯)。
- `[REFACTOR]`:重構。
---
> [!IMPORTANT]
> 身為 AI 助手 (Antigravity),我在接到任務時會優先判斷任務性質。
> 若為「新功能」且使用者要求直接在 `main` 執行,我會主動提醒並建議切換至 `feature/*` 分支。