๐Ÿ“š/Git

์™„๋ฃŒ๋œ Commit์— ํŒŒ์ผ ์ถ”๊ฐ€

PPYOM๐ŸŒŸ 2024. 10. 16. 18:38

 

์ €๋Š” ๊ฐœ๋ฐœํ•œ ๋‚ด์—ญ์„ ์ปค๋ฐ‹ ํ•  ๋•Œ์— ๊ฐ€๋” ํŒŒ์ผ์„ ๋ช‡ ๊ฐœ ๋นผ๋จน๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿด ๋•Œ๋งˆ๋‹ค reset ํ›„ ๋‹ค์‹œ ํ•ด๋‹น ํŒŒ์ผ์„ ํฌํ•จํ•ด ์ปค๋ฐ‹์„ ํ•˜๊ฑฐ๋‚˜ ๊ท€์ฐฎ์œผ๋ฉด ๊ทธ๋ƒฅ ๊ทธ ์œ„์— ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์„ ๋‚ ๋ ธ์—ˆ๋Š”๋ฐ ์ตœ๊ทผ ์ปค๋ฐ‹ ๋‚ด์—ญ ๊ด€๋ฆฌ์˜ ์ค‘์š”์„ฑ์„ ๋ผˆ์ €๋ฆฌ๊ฒŒ ๋А๋ผ๊ฒŒ ๋˜๋ฉฐ ๊ฐ™์€ ์ปค๋ฐ‹์„ ๋‘ ๋ฒˆ ๋‚ ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค.

git commit --amend

์ปค๋ฐ‹ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜์ธ --amend ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•ด staged ์ƒํƒœ์ธ ํŒŒ์ผ์„ ํ˜„์žฌ HEAD๊ฐ€ ์œ„์น˜ํ•œ ์ปค๋ฐ‹์— ์ถ”๊ฐ€ ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›ํ•˜๋Š” ํŒŒ์ผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. git restore --staged . ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ด ํ˜„์žฌ staged ์ƒํƒœ์ธ ํŒŒ์ผ์„ unstage ์ƒํƒœ๋กœ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.
  2. git add [์›ํ•˜๋Š” ํŒŒ์ผ] ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ด commit ํ•˜๊ณ  ์‹ถ์€ ํŒŒ์ผ์„ staged ์ƒํƒœ๋กœ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.
  3. git commit --amend ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅ ํ›„ :wq๋ฅผ ์ž…๋ ฅํ•ด vim์„ ์ข…๋ฃŒํ•ด์ค๋‹ˆ๋‹ค.
    • --no-edit ์˜ต์…˜์„ ์‚ฌ์šฉํ•ด vim์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ์ง„ํ–‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿšจ ์ฃผ์˜์‚ฌํ•ญ

git commit --amend๋ฅผ ์‚ฌ์šฉํ•ด push๋œ ์ปค๋ฐ‹์„ ์ˆ˜์ •ํ•˜๋ฉด ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฏธ push ๋œ ์ปค๋ฐ‹์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒฝ์šฐ git push --force๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ•์ œ๋กœ push ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ด๋ ‡๊ฒŒ ํ•œ๋‹ค๋ฉด ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ๋ง๊ฐ€๋œจ๋ฆด ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‹ ์ค‘ํ•˜๊ฒŒ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

728x90