728x90
어느정도 깃허브가 익숙해지면서 같은 실수를 반복하지 않고 에러없이 평화롭게 사용했다.
하지만 오늘 난 오랜만에 github 덕분에 식은 땀을 조금 흘렸다.
폴더 내 파일만 add해서 커밋하면 되는 걸 잘못 엔터를 쳐서 파일이 들어있는 폴더 자체를 add 했고
git status를 했을 땐 add 해야할 파일이 untracked로 뜨는 것이 아니라 new file 상태였다.
이런 적은 처음이었고 이 전체 폴더를 커밋했을 때 어떤 결과가 일어날지 모르니 커밋을 하기가 두려웠다.
그래서 add를 취소하는 방법을 찾아봤고 명령어는 아주 간단했다.
git reset HEAD "파일 명"
$ git reset HEAD "파일 명"
위의 명령어를 입력해 주면 해당 파일의 add를 취소해준다. 뒤에 파일명을 적지 않으면 add한 모든 파일을 취소해준다.
드디어 익숙한 untracked files가 떴다!
또 오늘은 아니지만 지난 날 중 어느날엔 commit을 잘못한 경우도 있었다.
이 때 역시 commit을 취소해주는 명령어를 사용하면 된다.
먼저 commit한 목록을 확인한다.
$ git log #commit한 목록 확인
commit을 취소하고 파일은 삭제하지 않을 것이기에 나는 git reset HEAD^ 명령어를 사용하였다.
$ git reset HEAD^ #commit을 취소하고 unstaged 상태로 파일 삭제하지 않고 보존
commit한 파일 중 특정 몇개만 commit을 취소하고 싶다면
git reset HEAD~숫자
명령어를 사용하면 된다. 뒤에 숫자는 마지막 몇개의 commit을 취소할지를 의미하기 때문에 어디까지 commit을 취소할지 판단 후 숫자를 입력하면 된다.
728x90