git을 사용하다 보면 이전 커밋으로 되돌아가고 싶은 경우가 있다.

이 때 사용할 수 있는 명령어와 방법에 대해 알아보자.

되돌리기(undoing)

1
2
3
$git restore unread.md

$git restore . // 현재위치 기준 모든 파일의 변경사항 취소
  • 커밋 몇 줄을 수정하기에는 너무 많아서 최신 커밋으로 되돌아 가는 방법이다.

unstaging

1
$git reset HEAD unread.md

add한 변경사항을 working directory로 내리는 방법이다.

  • 작업한 단위 별로 add하고 커밋을 해줘야하는데, 전체파일을 다 add 해버렸으면 위 명령어로 add한 것을 취소할 수 있다.

직전에 작성한 커밋 수정

1
$git commit --amend
  • 바로 직전의 커밋만을 수정하는 방법이다.
  • 커밋창이 열리고 메세지를 수정해주면 된다.

직전에 작성한 커밋 삭제

1
$git revert --no-commit HEAD~3..
  • –no-commit을 같이 입력해줘야 한번에 삭제가 가능하다. 안그러면 1개씩 커밋을 삭제해나가야한다.
  • git commit으로 왜 삭제하였는지에 대해서도 적어줘야한다.