| name | managing-branch-pr-workflow |
| description | Enforce branch-based workflow with meaningful Korean commits and PR creation for traceable decision history. |
๋ธ๋์น + PR ๊ธฐ๋ฐ ์์
์ํฌํ๋ก์ฐ
์ค๋ช
์ฌ์ฉ์์ ์์ฒญ(User Request)์ main ๋ธ๋์น์ auto-commit์ผ๋ก ๊ธฐ๋ก๋์ด ์๊ฐ์ ํ๋ฆ์ ๋ณด์กดํฉ๋๋ค.
Claude์ ์์
์ feature ๋ธ๋์น์์ ์ํํ๋ฉฐ, ๊ฐ ์ปค๋ฐ์ WHY(์์ฌ๊ฒฐ์ ๊ทผ๊ฑฐ)๋ฅผ ํฌํจํ์ฌ ์์
์ด๋ ฅ์ ์ถ์ ํ ์ ์๋๋ก ํฉ๋๋ค.
์์
์๋ฃ ํ PR์ ์์ฑํ์ฌ ์ ์ฒด ๋ณ๊ฒฝ์ฌํญ์ ์์ฝ๊ณผ ๊ทผ๊ฑฐ๋ฅผ ๋ฌธ์ํํฉ๋๋ค.
์ํฌํ๋ก์ฐ
1. ๊ณํ ์๋ฆฝ ํ ๋ธ๋์น ์์ฑ
git checkout -b feature/{์์
-์ค๋ช
}
- ๋ธ๋์น๋ช
์ ์๋ฌธ ์๋ฌธ์, ํ์ดํ ๊ตฌ๋ถ (์:
feature/cqrs-refactor, feature/sqlite-persistence)
- ๊ณํ(Plan)์ด ์น์ธ๋ ์งํ, ์ฝ๋ ๋ณ๊ฒฝ ์ ์ ์์ฑ
2. ์ฒซ ๋ฒ์งธ ์ปค๋ฐ (์๋)
3. ์์
์ค ์๋ฏธ ์๋ ํ๊ธ ์ปค๋ฐ
git add {๊ด๋ จ-ํ์ผ๋ค}
git commit -m "{ํ์
}: {๋ฌด์} - {์}"
- ๋
ผ๋ฆฌ์ ๋จ์๋ง๋ค ์ปค๋ฐ (ํ๋์ ์ปค๋ฐ = ํ๋์ ๋
ผ๋ฆฌ์ ๋ณ๊ฒฝ)
- ์ปค๋ฐ ๋ฉ์์ง๋ ๋ฐ๋์ ํ๊ธ๋ก ์์ฑ
- ์ปค๋ฐ ๋ฉ์์ง์ ๋ฐ๋์ WHY๋ฅผ ํฌํจ
4. ์์
์๋ฃ ํ PR ์์ฑ
gh pr create --title "{์ ๋ชฉ}" --body "## ์์ฝ\n- ...\n\n## ์์ฌ๊ฒฐ์ ๊ทผ๊ฑฐ\n- ..."
- PR ๋ณธ๋ฌธ์ ์์ฌ๊ฒฐ์ ๊ทผ๊ฑฐ ์น์
ํฌํจ
- ํ
์คํธ ๊ฒฐ๊ณผ ํฌํจ
์ปค๋ฐ ๋ฉ์์ง ํ์
{ํ์
}: {๋ฌด์์ ํ๋์ง} - {์ ์ด๋ ๊ฒ ํ๋์ง}
ํ์
์ข
๋ฅ
| ํ์
| ์ฉ๋ |
|---|
| ๊ธฐ๋ฅ | ์ ๊ธฐ๋ฅ ์ถ๊ฐ |
| ์์ | ๋ฒ๊ทธ ์์ |
| ๋ฆฌํฉํ ๋ง | ์ฝ๋ ๋ฆฌํฉํ ๋ง (๋์ ๋ณ๊ฒฝ ์์) |
| ํ
์คํธ | ํ
์คํธ ์ถ๊ฐ/์์ |
| ๋ฌธ์ | ๋ฌธ์ ๋ณ๊ฒฝ |
| ๊ธฐํ | ๋น๋, ์ค์ ๋ฑ |
๋์ ์
# main์ ์ง์ ์์
, ์์ฌ๊ฒฐ์ ๊ทผ๊ฑฐ ์์
[User Request] CQRS ํจํดํํ๋ก ์ฝ๋๋ฅผ ๋ฆฌํํ ๋ง ํด์ผํฉ๋๋ค...
# ๋ชจ๋ ๋ณ๊ฒฝ์ฌํญ์ด ํ๋์ ์ปค๋ฐ์, WHY ์์
์ข์ ์
# main: ์ฌ์ฉ์ ์์ฒญ ๊ธฐ๋ก
[User Request] CQRS ํจํดํํ๋ก ์ฝ๋๋ฅผ ๋ฆฌํํ ๋ง ํด์ผํฉ๋๋ค...
# feature/cqrs-refactor: Claude ์์
์ด๋ ฅ
[์๊ตฌ์ฌํญ] CQRS ํจํดํํ๋ก ์ฝ๋๋ฅผ ๋ฆฌํํ ๋ง ํด์ผํฉ๋๋ค... โ ์๋ (auto-commit.mjs)
๊ธฐ๋ฅ: Query/Command ์์ฒญ record ์ ์ - ์ฝ๊ธฐ/์ฐ๊ธฐ ์๋๋ฅผ ํ์
์์คํ
์ผ๋ก ๋ช
์
๊ธฐ๋ฅ: Handler ์ธํฐํ์ด์ค ๋ถ๋ฆฌ - DI๋ฅผ ํตํ ํ
์คํธ ๊ฒฉ๋ฆฌ์ ๊ตฌํ ๊ต์ฒด ์ฉ์ด์ฑ ํ๋ณด
๋ฆฌํฉํ ๋ง: Program.cs ์๋ํฌ์ธํธ๋ฅผ Handler๋ก ์์ - Minimal API ๊ตฌ์กฐ ์ ์งํ๋ฉด์ ๋น์ฆ๋์ค ๋ก์ง ๋ถ๋ฆฌ
ํ
์คํธ: Handler mock ํ
์คํธ ์ถ๊ฐ - ๋น์ฆ๋์ค ๋ก์ง์ DB ์์ด ๋
๋ฆฝ ๊ฒ์ฆ
# PR #1: CQRS ํจํด ์ ์ฉ
## ์์ฝ
- Query/Command ๋ถ๋ฆฌ๋ก CQRS ๊ตฌํ
## ์์ฌ๊ฒฐ์ ๊ทผ๊ฑฐ
- Handler๋ฅผ ์ธํฐํ์ด์ค๋ก ๋ถ๋ฆฌํ ์ด์ : Moq ๊ธฐ๋ฐ ๋จ์ ํ
์คํธ ์ง์
- Request๋ฅผ record๋ก ์ ์ํ ์ด์ : ๋ถ๋ณ์ฑ ๋ณด์ฅ + ๊ฐ ๊ธฐ๋ฐ ๋๋ฑ์ฑ
auto-commit ๋์
auto-commit.mjs๋ ๋ธ๋์น ์ธ์
- main: ๋ชจ๋ ๋ณ๊ฒฝ์ฌํญ์
[User Request] ์ปค๋ฐ (๊ธฐ์กด ๋์)
- feature: ์ฝ๋ ๋ณ๊ฒฝ ์์ด
[์๊ตฌ์ฌํญ] ๋น ์ปค๋ฐ๋ง ์๋ ์์ฑ โ Claude๊ฐ ์ฝ๋ ์ปค๋ฐ ์ง์ ๊ด๋ฆฌ