git-flow, github-flow, gitlab-flow (0)

minkyungยท2023๋…„ 1์›” 8์ผ
0

git

๋ชฉ๋ก ๋ณด๊ธฐ
1/2
post-thumbnail

git ๋ช…๋ น์–ด

develop ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ feature๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ

๐Ÿ“Ž ์šฐ๋ฆฐ Git-flow๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด์š” - ์šฐ์•„ํ•œํ˜•์ œ๋“ค ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ
์ž‘์—…์„ ํ•  ๋•Œ ๋ธŒ๋žœ์น˜์˜ ์ˆ˜๋ช…์€ ๋˜๋„๋ก ์งง๊ฒŒ ๊ฐ€์ ธ๊ฐ€๋Š” ๊ฒŒ ์ข‹์ง€๋งŒ, feature ๋ธŒ๋žœ์น˜์—์„œ ๊ธฐ๋Šฅ์„ ์™„๋ฃŒํ•˜๋Š”๋ฐ ํ•ด์•ผ ํ•  ์ž‘์—…๋“ค์ด ๋งŽ์•„์„œ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ๊ฒฝ์šฐ ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค ๋ณด๋ฉด develop์— ์ถ”๊ฐ€๋œ ๊ธฐ๋Šฅ๋“ค์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์ƒ๊ธฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿด ๋•Œ๋Š” feature ๋ธŒ๋žœ์น˜์— develop์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ๋“ค์„ ๊ฐ€์ ธ์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค.

feature-user ๋ธŒ๋žœ์น˜์— upstream/develop ๋ธŒ๋žœ์น˜๋ฅผ merge ํ•ฉ๋‹ˆ๋‹ค.

(feature-user)]$ git fetch upstream
(feature-user)]$ git merge โ€“no-ff upstream/develop

๐Ÿ’ก git fetch : ์ตœ์‹  ์ปค๋ฐ‹ ๋‚ด์—ญ์„ ๊ฐ€์ ธ์˜จ๋‹ค. merge๋Š” ํ•˜์ง€ ์•Š๋Š”๋‹ค.
๐Ÿ“Ž Git fetch : forkํ•œ ์ €์žฅ์†Œ๋ฅผ ์›๋ž˜ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์ปค๋ฐ‹ ๋‚ด์—ญ์œผ๋กœ ๋ฐ”๊พธ๊ธฐ

๐Ÿ’ก -no-ff : merge ์‹œ ๋ธŒ๋žœ์น˜ ๊ธฐ๋ก ์‚ฌ๋ผ์ง€๋Š” ๊ฒƒ์„ ๋ง‰์Œ

upstream/develop์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด merge๋œ feature-user๋ฅผ upstream์— push ํ•ฉ๋‹ˆ๋‹ค.

(feature-user)]$ git push upstream feature-user

๋ณ€๊ฒฝ ๋‚ด์šฉ commit ํ•˜์ง€ ์•Š๊ณ  ๋ธŒ๋žœ์น˜ ๋ฐ”๊พธ๊ธฐ

$ git stash
$ git checkout -b <์ƒˆ ๋ธŒ๋žœ์น˜๋ช…>
$ git stash pop

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

$ git branch -d <์‚ญ์ œํ•  ๋ธŒ๋žœ์น˜๋ช…>
profile
ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€