낙서장이자 오답 노트이자 컨닝 페이퍼

Git을 공부해보자: 취소, 되돌리기 깊이 알기 본문

git & github

Git을 공부해보자: 취소, 되돌리기 깊이 알기

NangIn 2023. 11. 29. 10:25
인프런에서 "제대로 파는 Git & GitHub - by 얄코"를 보고 정리한 내용입니다!

관리되지 않는 파일들 삭제

git clean

Git에서 추적하지 않는(한 번도 add 되지 않은) 파일들 삭제

  • 아래 옵션들을 조합하여 사용
  • 흔히 쓰이는 조합: git clean -df
옵션 설명
-n 삭제될 파일들 보여주기
-i 인터렉티브 모드 시작
-d 폴더 포함
-f 강제로 바로 지워버리기
-x .gitignore에 등록된 파일들도 삭제

 

커밋하지 않은 변경사항 되돌리기

git restore

특정 파일을 지정된 상태로 복구

워킹 디렉토리의 파일 복구 (스테이지에 올라가지 않은 파일을 워킹 디렉토리에서 내림)

git restore (파일명)
  • 워킹 디렉토리의 특정 파일 복구
  • 파일명 자리에  : 모든 파일 복구

변경상태를 스테이지에서 워킹 디렉토리로 돌려놓기 (add 취소)

git restore --staged (파일명)

파일을 특정 커밋의 상태로 되돌리기

해당 커밋의 상태로 단순히 파일이 내용만 변경되어 워킹 디렉토리에 있는 상태

git restore --source=(헤드 또는 커밋 해시) 파일명

 

reset으로 사라진 커밋 복구

git reflog

git reflog

reflog는 프로젝트가 위치한 커밋이 바뀔 때마다 기록되는 내역을 보여주는데 이를 사용하여 reset 하기 이전 시점으로 프로젝트를 복구할 수 있다.

 

즉, reflog 명령어를 사용하면 내가 수행한 Git 작업을 기준으로 과거 내역을 살펴보고 원하는 시점으로 프로젝트를 되돌릴 수 있다.