What problem does it solve?
PR ์ค๋ช
์์ฑ ๊ฐ์ด๋. "์ ๋ฐ๊ฟจ๋๊ฐ"์ ์ง์คํ๊ณ diff ๋ฐ๋ณต์ ๊ธ์งํ๋ค.
Use when creating pull requests, writing PR descriptions, or when user says "PR ์์ฑ", "PR ์ค๋ช
", "PR ๋ง๋ค์ด์ค", "/pr".
Core Features & Use Cases
PR ์ค๋ช
์ ์ฝ๋ ๋ณ๊ฒฝ ๋ชฉ๋ก์ด ์๋๋ผ ์คํ ๋ฆฌ๋ค. ๋ณ๊ฒฝ์ ๋งฅ๋ฝ๊ณผ ์๋๋ฅผ ์ ๋ฌํ๊ณ , diff์์ ๋ณด์ด์ง ์๋ ์ ๋ณด๋ฅผ ํฌํจํ๋ค.
๊ธ์ง ์ฌํญ (NEVER)
- NEVER: diff์์ ๋ณด์ด๋ ๋ด์ฉ ๋ฐ๋ณต ("Added X class", "Modified Y method", "Updated Z config")
- NEVER: ํ์ผ/ํด๋์ค/๋ฉ์๋ ๋ชฉ๋ก ๋์ด (Affected Classes, Changed Files ์น์
)
- NEVER: ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ๊ทธ๋๋ก ๋ณต๋ถํ "์ปค๋ฐ ๋ด์ญ" ์น์
- NEVER: ๊ธฐ์ ์ ์ธ๋ถ์ฌํญ๋ง ๋์ดํ๊ณ ์๋/๋งฅ๋ฝ ๋๋ฝ
- NEVER: AI๊ฐ diff๋ฅผ ์์ฝํ ๋ฏํ ๊ธฐ๊ณ์ ํค
- NEVER: "๊ฐ์ฅ ๋จ์ํ", "์๋ฒฝํ" ๋ฑ ์๊ธฐ ํ๊ฐ ํํ โ ๋ฆฌ๋ทฐ์ด๊ฐ ํ๋จํ ๋ชซ
ํ์ ๊ตฌ์กฐ
Breaking Change ์ ๋ฌด์ ๋ฐ๋ผ ๊ตฌ์กฐ๊ฐ ๋ฌ๋ผ์ง๋ค:
- Breaking Change ์๋ ๊ฒฝ์ฐ: Problem โ Solution โ Design Decisions โ Tradeoffs โ Verification โ Impact
- Breaking Change ์๋ ๊ฒฝ์ฐ: Problem (โ ๏ธ ๊ฒฝ๊ณ ํ ์ค) โ Impact โ Solution โ Design Decisions โ Tradeoffs โ Verification
Breaking Change๋ ๋ฆฌ๋ทฐ์ด๊ฐ ๊ฐ์ฅ ๋จผ์ ๋ด์ผ ํ ์ ๋ณด๋ค. Impact๋ฅผ ์์ผ๋ก ๋น๊ธด๋ค.
Problem
์ ์ด ๋ณ๊ฒฝ์ด ํ์ํ๊ฐ๋ฅผ ๊ตฌ์ฒด์ ์๋๋ฆฌ์ค๋ก ์ ์ํ๋ค. ์์น๋ ์ถ์ ๊ณผ ์ค์ธก์ ๊ตฌ๋ถํ๊ณ , Breaking Change๊ฐ ์์ผ๋ฉด โ ๏ธ ์ด PR์ Breaking Change๋ฅผ ํฌํจํฉ๋๋ค๋ฅผ ์๋จ์ ํ์ํ๋ค.
Impact
๋ณ๊ฒฝ์ ์ํฅ๊ณผ ํธํ์ฑ ์ ๋ณด๋ฅผ ๊ธฐ์ ํ๋ค. Breaking Changes์ ๊ฒฝ์ฐ ๋ณํ ์ /ํ๋ฅผ ๋ช
์ํ๊ณ , ํ๋ก๋์
ํ๊ฒฝ์ ๊ฒฝ์ฐ backward compatibility๋ฅผ ์ ์งํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํ๋ค.
Solution
์ด๋ป๊ฒ ํด๊ฒฐํ๋๊ฐ์ ๋ํ ์์ด๋์ด ์ฐจ์์ ์ค๋ช
์ด๋ค. ์ฝ๋๋ฅผ ๋์ดํ๊ธฐ๋ณด๋ค๋ ํจํด์ด๋ ์ค๊ณ ์๋ฆฌ๋ฅผ ์ค๋ช
ํ๋ค.
Design Decisions
์ ์ด ์ ๊ทผ๋ฒ์ ์ ํํ๋์ง์ ๊ทผ๊ฑฐ๋ฅผ ์ค๋ช
ํ๋ค. ๋์๊ณผ ๊ทธ ์ด์ ๋ฅผ ๊ฐ๋จํ ๊ธฐ์ ํ๋ค.
Tradeoffs
ํฌ๊ธฐํ ์ ์ฝ๊ณผ ํฌ์์ ๋ช
์ํ๋ค. ์: ์ฑ๋ฅ, ์ผ๊ด์ฑ, ๋ณต์ก์ฑ ๋ฑ์ ํธ๋ ์ด๋์คํ.
Verification
์ด๋ค ํ
์คํธ์ ๊ฒ์ฆ์ด ์ด๋ฃจ์ด์ก๋์ง ๊ธฐ์ ํ๋ค. ๋ฏธ๊ฒ์ฆ ๋ถ๋ถ๋ ์์งํ๊ฒ ๋ช
์ํ๋ค.
Quick Start
Follow this guide to craft a PR description that emphasizes rationale and context.