Dev_TIMI

์Šค๋‚ต ๊นƒ ๐Ÿช - ๊ธฐ์ดˆํŽธ #3: ๊นƒํ—ˆ๋ธŒ PR(Pull Request) ์ดํ•ดํ•˜๊ธฐ

by its_TIMI

GitHub์—์„œ PR(Pull Request)์€ ํ˜‘์—…์„ ์œ„ํ•œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜๋‹ค.

PR์€ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํŒ€์›๋“ค์—๊ฒŒ ๊ณต์œ ํ•˜๊ณ , ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์š”์ฒญํ•˜๋ฉฐ, ์•ˆ์ •์ ์œผ๋กœ ๋ณ‘ํ•ฉ(Merge)ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š”๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” PR์˜ ๊ฐœ๋…, ์ž‘์„ฑ ๋ฐฉ๋ฒ•, ๊ทธ๋ฆฌ๊ณ  PR ํ…œํ”Œ๋ฆฟ์„ ํ™œ์šฉํ•œ ํšจ์œจ์ ์ธ ํ˜‘์—… ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž.


PR์ด๋ž€?

 

PR์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํŒ€์›๋“ค์—๊ฒŒ ๊ณต์œ ํ•˜๊ณ , ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์š”์ฒญํ•˜๋ฉฐ, ๋ณ‘ํ•ฉ์„ ์ง„ํ–‰ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค.

 

PR์˜ ์ฃผ์š” ๋ชฉ์ :

 

1. ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๊ณต์œ 

: ํŒ€์›๋“ค์—๊ฒŒ ์ž‘์—… ๋‚ด์šฉ์„ ์•Œ๋ฆฐ๋‹ค.

2. ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์š”์ฒญ

: ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ๊ณผ ๊ฐœ์„ ์ ์„ ๋…ผ์˜ํ•œ๋‹ค.

3. ์•ˆ์ „ํ•œ ๋ณ‘ํ•ฉ

: ๋ฌธ์ œ๋ฅผ ์‚ฌ์ „์— ๋ฐœ๊ฒฌํ•˜๊ณ , ์•ˆ์ •์ ์œผ๋กœ ๋ณ‘ํ•ฉํ•œ๋‹ค.


PR ์ž‘์„ฑ ๋ฐฉ๋ฒ•

1. ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ ๋ฐ ์ž‘์—…

git checkout -b feature-login
echo "์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ" > login.txt
git add login.txt
git commit -m "Add login feature"

 

2. ๋ธŒ๋žœ์น˜ Push

git push origin feature-login

 

3. ๊นƒํ—ˆ๋ธŒ์—์„œ PR ์ƒ์„ฑ

 GitHub ์ €์žฅ์†Œ์—์„œ “Compare & pull request” ๋ฒ„ํŠผ์„ ํด๋ฆญํ•œ๋‹ค.

 ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ์„ค๋ช…ํ•˜๊ณ  “Create pull request” ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ PR์„ ์ƒ์„ฑํ•œ๋‹ค.


PR ํ…œํ”Œ๋ฆฟ ํ™œ์šฉํ•˜๊ธฐ

 

PR์„ ๋” ํšจ์œจ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋ ค๋ฉด PR ํ…œํ”Œ๋ฆฟ์„ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ค‘์š”ํ•œ ์ •๋ณด๋ฅผ ๋น ๋œจ๋ฆฌ์ง€ ์•Š๊ณ  ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ํŒ€์› ๊ฐ„์˜ ์†Œํ†ต๋„ ์›ํ™œํ•ด์ง„๋‹ค.

 

ํ…œํ”Œ๋ฆฟ ์ž‘์„ฑ๋ฒ•๊ณผ ํ™œ์šฉ๋ฒ•์€ ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•˜์ž:

๐Ÿ”— [PR ํ…œํ”Œ๋ฆฟ ์ž‘์„ฑ ๊ฐ€์ด๋“œ](https://itstimi.tistory.com/entry/%EC%8A%A4%EB%82%B5-%EA%B9%83-%F0%9F%8D%AA-5-%EA%B9%83%ED%97%88%EB%B8%8C-PR-%ED%85%9C%ED%94%8C%EB%A6%BF%EC%9C%BC%EB%A1%9C-%ED%98%91%EC%97%85-%ED%9A%A8%EC%9C%A8-%EB%86%92%EC%9D%B4%EA%B8%B0)


PR ์ž‘์„ฑ ์‹œ ํŒ

1. ๋ช…ํ™•ํ•œ ์ œ๋ชฉ๊ณผ ์„ค๋ช… ์ž‘์„ฑ

: “๋ฌด์—‡์„, ์™œ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€”๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.

2. ๊ด€๋ จ ์ด์Šˆ์™€ ์—ฐ๊ฒฐ

: Fixes #123๊ณผ ๊ฐ™์ด ๊ด€๋ จ ์ด์Šˆ๋ฅผ ์—ฐ๊ฒฐํ•ด ์ž‘์—…์˜ ๋ชฉ์ ์„ ๋ช…ํ™•ํžˆ ํ•œ๋‹ค.

3. ๋ฆฌ๋ทฐ์–ด ์ง€์ •

: ํ•„์š”ํ•œ ํŒ€์›๋“ค์„ ๋ฆฌ๋ทฐ์–ด๋กœ ์ถ”๊ฐ€ํ•ด ํšจ์œจ์ ์ธ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์œ ๋„ํ•œ๋‹ค.


PR์€ ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๋†’์ด๊ณ , ํ˜‘์—…์˜ ํšจ์œจ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ๋‹ค.

GitHub์—์„œ PR์„ ํ™œ์šฉํ•˜์—ฌ ํŒ€์›๋“ค๊ณผ ์›ํ™œํ•˜๊ฒŒ ํ˜‘์—…ํ•˜๊ณ , ์•ˆ์ •์ ์ธ ๋ณ‘ํ•ฉ ๊ณผ์ •์„ ๊ฒฝํ—˜ํ•ด ๋ณด์ž.


์ด ๊ธ€์„ ํ†ตํ•ด Git๊ณผ GitHub์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์„ ์ดํ•ดํ•˜๊ณ  ํ™œ์šฉ๋ฒ•์„ ์ตํžˆ๊ธธ ๋ฐ”๋ž€๋‹ค.

๋‹ค์Œ์—๋„ ์‹ค์šฉ์ ์ธ ๊นƒ ํŒ์œผ๋กœ ์ฐพ์•„์˜ค๊ฒ ๋‹ค. 

๋ฐ˜์‘ํ˜•

๋ธ”๋กœ๊ทธ์˜ ์ •๋ณด

Dev_TIMI

its_TIMI

ํ™œ๋™ํ•˜๊ธฐ