← Back to list

git-workflow
by Ponpon55837
農民曆智慧投資 - 0050 ETF 投資建議系統
⭐ 0🍴 0📅 Jan 23, 2026
SKILL.md
name: git-workflow description: Git 分支命名與工作流程規範 license: MIT compatibility: opencode metadata: version: '1.2.0' updated: '2026-01-20' audience: developers workflow: git language: zh-TW
我的功能
- 提供標準化的 Git 分支命名規範
- 確保分支類型、開發者名稱和功能描述的一致性
- 協助團隊遵循最佳的 Git 工作流程
⚠️ 開始前必讀
🔴 在任何程式碼修改前,必須先執行以下步驟:
# 1. 確認當前在 main 分支
git branch
# 2. 如果不在 main,切換到 main
git checkout main
# 3. 拉取最新代碼
git pull origin main
# 4. 建立新的功能分支
git checkout -b <type>/<developer-name>/<feature-description>
❌ 絕對禁止:直接在 main 分支上進行任何修改!
✅ 正確流程:永遠從 main 建立新分支 → 在新分支上開發 → 提交 → 推送 → 建立 PR
何時使用我
在以下情況下使用此技能:
- 🔴 任何程式碼修改前(檢查是否已建立分支)
- 建立新的 Git 分支時
- 需要確認分支命名是否符合規範
- 撰寫 Commit 訊息時
- 團隊協作需要統一的分支管理策略
- 進行 code review 時檢查分支命名
分支命名規範
標準格式
<type>/<developer-name>/<feature-description>
分支類型 (type)
-
feat: 新功能開發
- 例如:
feat/lip/user-authentication - 用於: 開發全新的功能或特性
- 例如:
-
fix: 錯誤修復
- 例如:
fix/lip/login-button-error - 用於: 修復現有功能的 bug
- 例如:
-
refactor: 程式碼重構
- 例如:
refactor/lip/optimize-state-management - 用於: 改善程式碼結構,但不改變功能
- 例如:
-
docs: 文件更新
- 例如:
docs/lip/update-readme - 用於: 更新專案文件、README、註解等
- 例如:
-
style: 樣式調整
- 例如:
style/lip/improve-button-design - 用於: UI/UX 改進、CSS 調整
- 例如:
-
test: 測試相關
- 例如:
test/lip/add-unit-tests - 用於: 新增或修改測試
- 例如:
-
chore: 雜項任務
- 例如:
chore/lip/update-dependencies - 用於: 依賴更新、建置配置等
- 例如:
命名原則
- 使用小寫字母: 所有分支名稱使用小寫
- 使用連字符: 單詞之間使用
-連接 - 簡潔明確: 功能描述應簡短但具描述性
- 英文命名: 統一使用英文命名
- 避免特殊字符: 只使用字母、數字和連字符
實際範例
# ✅ 正確範例
git checkout -b feat/lip/add-language-selector
git checkout -b fix/lip/fix-search-modal-crash
git checkout -b refactor/lip/improve-pinia-structure
git checkout -b docs/lip/update-api-documentation
# ❌ 錯誤範例
git checkout -b new-feature # 缺少類型和開發者名稱
git checkout -b feat/AddFeature # 使用大寫字母
git checkout -b feat/lip/新增功能 # 使用中文
git checkout -b feat-lip-feature # 格式錯誤
工作流程
1. 建立新分支
# 從 main 分支建立新分支
git checkout main
git pull origin main
git checkout -b <type>/<name>/<description>
2. 開發過程
# 定期提交變更
git add .
git commit -m "feat: implement user authentication"
# 定期同步主分支
git fetch origin main
git rebase origin/main
3. 準備合併
# 推送分支到遠端
git push -u origin <branch-name>
# 建立 Pull Request
# 使用 GitHub/GitLab 介面建立 PR
4. 合併後清理
# 刪除本地分支
git branch -d <branch-name>
# 刪除遠端分支
git push origin --delete <branch-name>
提交訊息規範
格式
<type>: <subject>
<body>
<footer>
類型 (type)
與分支類型相同: feat, fix, refactor, docs, style, test, chore
語言規範
🔴 重要:Lucky50 專案使用繁體中文作為 Commit 訊息的預設語言
- 優先使用繁體中文:除非特別要求或有特殊情況,Commit 訊息應使用繁體中文書寫
- 標題 (subject):使用中文簡潔描述
- 內文 (body):使用中文詳細說明變更內容
- 註解 (footer):使用中文標註相關 issue 或參考資料
範例
# ✅ 正確:使用繁體中文(推薦)
git commit -m "feat: 新增語言選擇器組件"
# ✅ 正確:詳細的中文提交訊息
git commit -m "feat: 新增語言選擇器組件
- 實作包含 5 種語言選項的下拉選單
- 新增語言偏好設定到 localStorage
- 更新 i18n 配置
關聯 issue #123"
# ⚠️ 可接受:英文提交(特殊情況或國際協作)
git commit -m "feat: add language selector component
- Implement dropdown with 5 language options
- Add language persistence to localStorage
- Update i18n configuration
Closes #123"
# ❌ 錯誤:混用中英文
git commit -m "feat: 新增 language selector component"
提交訊息最佳實踐
- 使用繁體中文為主:確保團隊成員都能快速理解
- 標題簡潔明確:50 字以內,說明「做了什麼」
- 內文詳細說明:解釋「為什麼」和「怎麼做」
- 使用條列式:清楚列出所有變更項目
- 關聯相關 issue:在 footer 標註相關的 issue 編號
注意事項
- 絕不直接在 main 分支開發: 永遠從 main 建立新分支
- 保持分支生命週期短: 盡快完成並合併分支
- 定期同步主分支: 避免合併衝突
- 使用有意義的名稱: 讓他人能理解分支目的
- 一個分支一個功能: 避免在單一分支混合多個不相關的變更
- 🔴 Commit 訊息使用繁體中文: Lucky50 專案預設使用中文撰寫 Commit 訊息
常見問題
Q: 如何處理長期開發的功能?
A: 建立 feature 分支,定期從 main rebase,完成後再合併。
Q: 可以在分支名稱中使用 issue 編號嗎?
A: 可以,格式: feat/lip/add-feature-#123
Q: 如何處理緊急修復?
A: 使用 hotfix 類型: hotfix/lip/critical-bug-fix
參考資源
Score
Total Score
60/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon