[git] git rebase ์ด์ „์˜ ํŠน์ • ์ปค๋ฐ‹ ์ˆ˜์ •ํ•˜๊ธฐ
728x90

 

์ด์ „ ์ปค๋ฐ‹์„ ์ˆ˜์ •ํ•˜๋ ค๋‹ค๊ฐ€ ์ƒํ™ฉ์ด ์ข€ ๊ผฌ์˜€๋‹ค๊ฐ€ ์–ด๋–ป๊ฒŒ ๋‹ค์‹œ ๋ณต๊ตฌ... (๋ฒŒ์จ ๋‘ ๋ฒˆ์งธ ๐Ÿ˜‡) ํ•˜์˜€์œผ๋‚˜

๊ฒฐ๋ก ์ ์œผ๋กœ ์ˆ˜์ •์€ ์‹คํŒจํ•ด์„œ !....

git rebase๋ฅผ ์ด์šฉํ•ด ํŠน์ • ์‹œ์ ์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ์ปค๋ฐ‹์„ ์ˆ˜์ •ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

 

ํ˜„์žฌ์˜ ๊ฒฝ์šฐ๋Š” ์ด๋ฏธ ์˜คํƒ€ ์ˆ˜์ • ์ปค๋ฐ‹....์„ ํ•ด๋ฒ„๋ ธ๋Š”๋ฐ ๋˜ ์˜คํƒ€๊ฐ€ ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ•ด๋ฒ„๋ ธ๊ณ !...

๋” ์ด์ƒ์˜ ์˜คํƒ€ ์ปค๋ฐ‹์„ ํ•˜๊ณ ์‹ถ์ง„ ์•Š์•„์„œ rebase๋ฅผ ์จ๋ณด๋ ค ํ•œ๋‹ค.

์ด์ „์—๋„ rebase๋ฅผ ์ผ์Œ ์ข‹์•˜์„ ๊ฒƒ์„..

 

 

git rebase ํ•ด๋ณด๊ธฐ

ํ„ฐ๋ฏธ๋„์˜ git log์—์„œ ๋ฐ”๊ฟ€ ์ปค๋ฐ‹์˜ ํ•ด์‹œ๋ฅผ ๋ณต์‚ฌํ•œ๋‹ค

git rebase -i ํ•ด์‹œ ๋ฅผ ํ†ตํ•ด ๋ฆฌ๋ฒ ์ด์Šค ํ•˜๋Ÿฌ ๋“ค์–ด๊ฐ„๋‹ค.

๊ทธ๋Ÿผ ํ˜„์žฌ ์ปค๋ฐ‹๋œ ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ๋ถ€๋ถ„์ด ๋‚˜์˜ค๋Š”๋ฐ,

pick ์ปค๋ฐ‹๋ฒˆํ˜ธ ์ปค๋ฐ‹๋ฉ”์„ธ์ง€ ๋ถ€๋ถ„์˜ pick์„ edit์œผ๋กœ ์ˆ˜์ • ํ›„ ์ €์žฅํ•˜๊ณ  ๋‚˜์™€์ค€๋‹ค.

(์ฐธ๊ณ ๋กœ ํ„ฐ๋ฏธ๋„์—์„œ ์ž…๋ ฅ์€ ํ‚ค๋ณด๋“œ i๋ฅผ ๋ˆŒ๋Ÿฌ์„œ, ์ˆ˜์ • ํ›„ :wq ๋ฅผ ์ž…๋ ฅํ•ด์„œ ์ €์žฅํ•˜๊ณ  ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋‹ค.)

 

 

๊ทธ๋Ÿผ ์ด์ œ ์ปค๋ฐ‹์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๊ฐ€ ๋˜์—ˆ์œผ๋‹ˆ vi ๋‚˜ vim, ํ˜น์€ ์—๋””ํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ ,

git add ํŒŒ์ผ๊ฒฝ๋กœ๋กœ ์ˆ˜์ •ํ•œ ํŒŒ์ผ์„ ์˜ฌ๋ ค์ค€ ๋’ค git commit --amend ๋กœ ์ˆ˜์ •ํ•œ ํŒŒ์ผ์„ ์ปค๋ฐ‹ํ•ด์ค€๋‹ค.

๊ทธ๋Ÿผ ์œ„์™€ ๊ฐ™์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ด๋Ÿฐ ๋ฉ”์„ธ์ง€๊ฐ€ ๋œจ๋Š”๋ฐ,

์ด ๋•Œ ์ €์žฅํ•˜๊ณ  ๋‚˜์˜จ ๋’ค git rebase --continue ๋ฅผ ์ž…๋ ฅํ•ด์ค˜์•ผ ๋ฆฌ๋ฒ ์ด์Šค๋ฅผ ๋๋‚ด๊ณ  ๋ฉ”์ธ ๋ธŒ๋žœ์น˜๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋‹ค.

๋‚˜์˜ ๊ฒฝ์šฐ๋Š”... ์™œ ๋‹ค์Œ์— ํ•  ๋ช…๋ น์ด ๋‚˜์˜ค๋ƒ ํ•˜๋ฉด ์•„๋ฌด๋ž˜๋„ ์ฒ˜์Œ ๋ฆฌ๋ฒ ์ด์Šค ๋“ค์–ด๊ฐˆ ๋•Œ์˜ ์ปค๋ฐ‹๋ฒˆํ˜ธ๋ฅผ ์ž˜๋ชป๋ณด๊ณ  ์ž…๋ ฅํ•œ ๋“ฏ ํ•˜๋‹ค;;

 

 

์•”ํŠผ ๊ทธ๋Ÿผ ์ˆ˜์ •๋„ ์ž˜ ๋ฐ˜์˜ ๋˜์–ด์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

์•„์ง ๊นƒ์„ ์ž˜ ๋ชจ๋ฅด๋‹ˆ ์ขŒ์ถฉ์šฐ๋Œ ๊ฒช์–ด๋‚˜๊ฐ€๋Š”๊ฑด ๋‹น์—ฐํ•˜๋‹ค!~

๋‹ค์Œ์—” ์ข€ ๋” ์ž˜ ํ•ด๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.... ๐Ÿ˜‡

728x90