본문 바로가기
개발 지식/Git

[git] checkout의 기능, 변경사항 취소하기

by hi-rachel 2023. 10. 2.

잘 작동하는 코드를 git 원격 저장소에 push한 후 수정하다 제대로 작동하지 않는다. 원래 코드로 돌아가고 싶을 때 쓰는 명령어는

git checkout .
git restore .

둘 중 하나를 사용하면 된다. 로컬에서 단순 저장만 했던 파일들을 복구해주고(아직 add, commit 되지 않은 내용) 새로 만든 파일, 폴더는 직접 삭제하면 된다. (추적 x)

추적하지 않는 파일에는 영향이 없다.

* checkout으로 지워버린 내용은 commit하지 않고 지워 다시 복구할 수 없으므로 신중히 사용!

 

git checkout의 기능

- branch 혹은 commit 전환

- 내용 되돌리기

 

특정 branch로 이동하기

git checkout {branch name}

 

특정 branch 생성 후 해당 branch로 이동하기

git checkout - b {new branch name}

 

특정 branch에서 파생 branch로 만들어서 해당 branch로 이동

git checkout -b {branch name} {base branch name}

 

모든 변경 사항을 취소 (맨 위와 같음)

git checkout .

 

특정 파일에서 작업한 내용 삭제하기

git checkout --{file name}

 


특정 commit 버전으로 전환

git checkout {commit hash}

아직 commit 하지 않은 내용이 있다면 전환되지 않는다.

 

commit hash 확인

git log

 

직전 commit으로 이동

git checkout HEAD^

git checkout HEAD~1

 

 

 

참고

https://jooncco.com/git/git-undoing-changes/

https://zoosso.tistory.com/729