DEV/DevelopSystem

[git] ์›๊ฒฉ ์ปค๋ฐ‹ ์‚ญ์ œํ•˜๊ธฐ

9thxg 2023. 10. 19. 22:28

๐Ÿ’ป ๊ฒฐ๊ณผ

$ git reabse -i HEAD~3

ํ˜„์žฌ ์ฒดํฌ์•„์›ƒ๋œ ์œ„์น˜์—์„œ ์ˆ˜์ •ํ•ด์•ผ ํ•  ์ปค๋ฐ‹ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•œ๋‹ค. (HEAD~๊ฐœ์ˆ˜)

 

pick 7b778ab Summary ํŽ˜์ด์ง€ ์ƒ์„ฑ
pick ace7464 Summary ํด๋ž˜์Šค ์ถ”๊ฐ€
drop 89217d0 WIP SummaryAccount

์ƒ๋‹จ์— ๋ถˆ๋Ÿฌ์˜จ ์ปค๋ฐ‹๋“ค ์ค‘์—์„œ ์ œ๊ฑฐํ•˜๊ณ  ์‹ถ์€ ์ปค๋ฐ‹์˜ ์•ž์— ๋ช…์‹œ๋œ ๊ฐ’์„ pick์—์„œ drop์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ์ €์žฅ ํ›„ ๋น ์ ธ๋‚˜์˜จ๋‹ค. (vi ๋ช…๋ น์–ด ์‚ฌ์šฉ)

 

· vi ๋ช…๋ น์–ด ์ˆœ์„œ
1. i ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ์ž…๋ ฅ๋ชจ๋“œ ์ „ํ™˜
2. ํ•„์š”ํ•œ ๋ถ€๋ถ„ ์ˆ˜์ •
3. esc ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ๋ช…๋ น๋ชจ๋“œ ์ „ํ™˜
4. : ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ๋งˆ์ง€๋ง‰ ํ–‰ ๋ชจ๋“œ ์ „ํ™˜ ํ›„ wq ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ €์žฅ ํ›„ ์ข…๋ฃŒ

 

$ git push -f origin main

ํ˜„์žฌ ์ปค๋ฐ‹์˜ ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์„ ์›๊ฒฉ ์„œ๋ฒ„์— ๋ฐ˜์˜ํ•˜๊ธฐ ์œ„ํ•ด push ๋ช…๋ น์–ด๋ฅผ -f(--force) ํ”Œ๋ž˜๊ทธ์™€ ํ•จ๊ป˜ ์‹คํ–‰ํ•œ๋‹ค.

 

 

๐Ÿ“ console.log(history)

ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋˜ ์ค‘ ๋„ˆ๋ฌด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ ๊ฒ€ํ•˜์ง€ ์•Š๊ณ  ์ปค๋ฐ‹ํ•œ ํ›„ ์›๊ฒฉ ์„œ๋ฒ„์— push๋ฅผ ํ•ด๋ฒ„๋ ธ๋‹ค. ์ปค๋ฐ‹์ด ๋กœ์ปฌ์— ์žˆ๋Š” ์ƒํƒœ๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ์›๊ฒฉ์— ์ €์žฅ๋œ ์ปค๋ฐ‹์„ ์‚ญ์ œ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ–ˆ๋‹ค.

 

๊ตฌ๊ธ€๋ง์„ ํ•œ ๊ฒฐ๊ณผ rebase๋ฅผ ํ†ตํ•ด ์ œ๊ฑฐํ•˜๊ณ  ์‹ถ์€ ์ปค๋ฐ‹์„ ์ง€์ •ํ•ด์„œ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ง์ ‘ rebase ๋ช…๋ น์–ด๋ฅผ ์ ์šฉํ•˜์—ฌ ์›๊ฒฉ์—์„œ ์ปค๋ฐ‹์ด ์‚ญ์ œ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๋‹ค๋งŒ, ํ˜ผ์ž ํ”„๋กœ์ ํŠธ๋ฅผ ์ž‘์—…ํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ํฐ ๋ฌธ์ œ์—†์ง€๋งŒ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฏธ ์›๊ฒฉ์— ์˜ฌ๋ผ๊ฐ€ ๋ฒ„๋ฆฐ ์ž˜๋ชป๋œ ์ปค๋ฐ‹์„ ํ˜‘์—… ์ค‘์ธ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ pull ํ•œ ์ƒํƒœ๋ผ๋ฉด ๊ทธ ์œ ์ €๊ฐ€ ์ดํ›„ ์›๊ฒฉ์— ๋‹ค์‹œ ์ปค๋ฐ‹์„ push ํ•˜๊ฒŒ ๋˜๋ฉด ์‚ญ์ œ๋œ ์ปค๋ฐ‹์ด ๋‹ค์‹œ ์ƒ์„ฑ๋œ๋‹ค.

 

๊ณ ๋กœ git์€ ์ตœ๋Œ€ํ•œ ์‹ค์ˆ˜ ์—†์ด ์ž˜ ๊ธฐ๋กํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์ž ๐Ÿฅฒ