๋“ค์–ด๊ฐ€๋ฉฐ

commit์„ ํ•˜๊ณ  pushํ•œ ์ดํ›„ ์ž‘์—…์ด ์ž˜๋ชป๋˜์—ˆ์Œ์„ ๊นจ๋‹ซ๊ณ  ์›๋ž˜ ์ƒํƒœ๋กœ ๋Œ์•„๊ฐ€๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, local์—์„œ๋Š” reset ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๊ฒฐ๋˜์ง€๋งŒ ์ด๋ฏธ remote repository์— ๋ฐ˜์˜๋œ ๊ฒฝ์šฐ์— ์ถฉ๋Œ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด revert๋ผ๋Š” ๊ธฐ๋Šฅ์„ ์•Œ๊ฒŒ ๋˜์–ด ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

How to use

git revert [๋Œ์•„๊ฐ€๊ณ  ์‹ถ์€ commit ๋ฒˆํ˜ธ]

Example

1. Source ๋ชจ์Šต

2. ๋‚ด์šฉ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

3. Commit Log๋ฅผ ํ™•์ธํ•˜๊ณ  push ํ–ˆ๋Š”๋ฐ..

4. ๋ญ”๊ฐ€ ์ž˜๋ชป๋˜์—ˆ๋‹ค.. ์•„.. Second Commit ์ƒํƒœ๋กœ ๋Œ์•„๊ฐ€๊ณ  ์‹ถ๋‹ค.

5. git revert๊ฐ€ ๋ฐ˜์˜๋œ Commit Log

6. revert๊ฐ€ ๋ฐ˜์˜๋œ Source ๋ชจ์Šต

๋Œ€๋งŒ์กฑ :)

Git Reset๊ณผ Revert์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด

git reset

  • commit๊ณผ ๋‚ด์šฉ์„ ์•„์˜ˆ Rollbackํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ.
    • --soft : Rollback ๋‚ด์šฉ์„ Stage์— ์œ ์ง€.
    • --hard : Rollback ๋‚ด์šฉ์„ ๋‚ ๋ ค๋ฒ„๋ฆผ.
  • Local์—์„œ๋งŒ ์ ์šฉ๋œ commit์„ Rollbackํ•˜๊ธฐ ์ข‹์€ ๋ช…๋ น์–ด

git revert

  • commit์„ ์œ ์ง€ํ•˜๋ฉด์„œ ๋‚ด์šฉ์„ Rollbackํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ.
  • commit์ด ์œ ์ง€๋˜๊ธฐ ๋•Œ๋ฌธ์— Remote Repository ์ถฉ๋Œ์ด ์ ๊ฒŒ ๋‚œ๋‹ค.

Reference