git branch

Pull Request๋Š” Merge ํ˜น์€ Closed๊ฐ€ ๋˜์ง€ ์•Š๋Š” ํ•œ ์ƒˆ๋กœ์šด ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด ๊ณ„์† ๋ฐ˜์˜์ด ๋œ๋‹ค๋Š” ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์žฅ์ ์ด์ž ๋‹จ์ ์ธ๋ฐ, ์žฅ์ ์€ ๊ตณ์ด ์ œ๊ฐ€ PR์— ์–ด๋–ค ์ปค๋ฐ‹์„ ์ถ”๊ฐ€ํ•ด์•ผํ• ์ง€ ๊ณ ๋ฏผํ•  ํ•„์š” ์—†์ด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‹จ์ ์„ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ๋ฐ˜์˜์ด ๋œ๋‹ค๋Š” ๋ง์€ ์šฐ๋ฆฌ๋Š” ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์ด ํ•˜๋‚˜ ๋๋‚ฌ์œผ๋ฉด ํ•ด๋‹น PR์ด merge ํ˜น์€ closed๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์ž ์‹œ ์ค‘๋‹จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ก์„ ๊น”๋”ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด GitHub๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ๋งŒ์•ฝ ํ•ด๋‹น PR๊ณผ ๊ด€๋ จ์ด ์—†๋Š” ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋ฉด ์ข‹์€ ๊ธฐ๋ก ๊ด€๋ฆฌ๊ฐ€ ๋˜์ง€ ์•Š๊ฒ ์ฃ 

์ด๋•Œ ์šฐ๋ฆฌ๋Š” ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ๋ฉˆ์ถ”๋Š”๊ฒŒ ์•„๋‹Œ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒˆ๋กœ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด์„œ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ธŒ๋žœ์น˜๋Š” ํŒ€์›๋“ค์ด fork๋ฅผ ํ•˜๋Š” ๊ฒƒ๊ณผ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์™€ ํŒ€์›๋“ค์ด fork๋ฅผ ํ•ด๋„ ๋‚ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ๋Š” ํŒ€์›๋“ค์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์™€ ์„œ๋กœ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค. PR์„ ๋ณด๋‚ผ ๋•Œ๋„ ์˜ค์ง ์›๋ณธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—๋งŒ ์˜ํ–ฅ์„ ๋ฐ›์ง€, ํŒ€์›์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์™€๋Š” ์ง์ ‘์ ์ธ ์˜ํ–ฅ์„ ๋ฐ›์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

๋ธŒ๋žœ์น˜๋„ ๋˜‘๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋ธŒ๋žœ์น˜๋Š” ์„œ๋กœ ๋ธŒ๋žœ์น˜๋ผ๋ฆฌ ์˜ํ–ฅ์„ ์ฃผ๊ณ  ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ A๋ผ๋Š” ๋ธŒ๋žœ์น˜์— ์–ด๋–ค ๊ธฐ๋Šฅ์„ ์ œ์ž‘ํ•˜๊ณ  PR์„ ๋ณด๋‚ธ ์ƒํƒœ๋ผ๋ฉด ๊ธฐ๋‹ค๋ฆฌ์ง€ ๋ง๊ณ , B๋ผ๋Š” ๋ธŒ๋žœ์น˜์—์„œ ๋˜ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

1. ๋ธŒ๋žœ์น˜ ๋ชฉ๋ก ํ™•์ธํ•˜๊ธฐ

๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค๊ณ , ๋ณ€๊ฒฝํ•˜๊ณ , ์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ œ๊ฐ€ ์žˆ๋Š” branch๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด git branch ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ๋Š” main ๋ธŒ๋žœ์น˜ ๋ฐ–์— ์—†์œผ๋ฏ€๋กœ main๋งŒ ๋ชฉ๋ก์— ๋‚˜์˜ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

2. ๋ธŒ๋žœ์น˜ ์ƒ์„ฑํ•˜๊ธฐ

์ด์ œ ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ git branch <์ด๋ฆ„> ์„ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ test๋ผ๋Š” ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๋ชฉ๋ก์„ ํ™•์ธํ•ด๋ณด๋‹ˆ ์ •์ƒ์ ์œผ๋กœ ์ƒ์„ฑ๋œ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. ๋ธŒ๋žœ์น˜ ์ด๋™ํ•˜๊ธฐ

์ด์ œ main ๋ธŒ๋žœ์น˜์—์„œ test ๋ธŒ๋žœ์น˜๋กœ ๋ณ€๊ฒฝ์„ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

git checkout <์ด๋™ํ•  ๋ธŒ๋žœ์น˜ ์ด๋ฆ„> ์œผ๋กœ ๋ณ€๊ฒฝ์„ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ git checkout test ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

main ๋ธŒ๋žœ์น˜์—์„œ test ๋ธŒ๋žœ์น˜๋กœ ๋ฐ”๋€ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4. ๋ธŒ๋žœ์น˜ ์‚ญ์ œํ•˜๊ธฐ

๋‹ค์‹œ test ๋ธŒ๋žœ์น˜์—์„œ main ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ํ•ด๋ด…์‹œ๋‹ค. git checkout main ์„ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ด์ œ test ๋ธŒ๋žœ์น˜๋ฅผ ์‚ญ์ œํ•ด๋ด…์‹œ๋‹ค.

git branch -d <์‚ญ์ œํ•  ๋ธŒ๋žœ์น˜ ์ด๋ฆ„> ์œผ๋กœ ์—ฌ๊ธฐ์„œ๋Š” git branch -d test ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

5. ๋ธŒ๋žœ์น˜ ์ƒ์„ฑํ•˜๊ธฐ 2

๊ผญ ์•Œ์•„์•ผ ํ•  ๊ฒƒ์€ ํ˜„์žฌ ๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์ƒˆ๋กœ์šด ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ํ˜„์žฌ ๋ธŒ๋žœ์น˜์˜ ์œ„์น˜๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜์— ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ํ† ๋Œ€๋กœ ์ƒˆ๋กœ์šด ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ ๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

git branch <์ƒˆ๋กœ ๋งŒ๋“ค ๋ธŒ๋žœ์น˜ ์ด๋ฆ„> <๊ฐ€์ ธ์˜ฌ ๋ธŒ๋žœ์น˜ ์ด๋ฆ„> ์„ ์ž…๋ ฅํ•˜๋ฉด ๋˜๋Š”๋ฐ, ์ด๊ฒƒ๋„ ์‹ค์Šต์„ ์ง„ํ–‰ํ•ด๋ด…์‹œ๋‹ค.

๋จผ์ € ๋‹ค์‹œ test ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. (git branch test)

git branch new_test test ๋ฅผ ์ž…๋ ฅํ•ด๋ด…์‹œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด new_test๋ผ๋Š” ๋ธŒ๋žœ์น˜๊ฐ€ ๋งŒ๋“ค์–ด์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

Last updated