1. 관리되지 않는 파일들을 삭제하기
git clean
- 새로 생성된 untracked 파일들을 삭제할 수 있다.
옵션 | 설명 |
---|
-n | 삭제될 파일들 보여주기 |
-i | 인터렉티브 모드 시작 |
-d | 폴더 포함 |
-f | 강제로 바로 지워버리기 |
-x | .gitignore 에 등록된 파일들도 삭제 |
- 위의 옵션들을 조합하여 사용한다.
git clean -df
: 흔히 쓰이는 조합, 폴더를 포함하여 강제로 지워버린다.
2. 커밋하지 않은 변경사항 되돌리기
git restore 파일명
: 워킹 디렉토리의 특정 파일을 복구한다. 파일명 자리에 .
를 입력하면 모든 파일을 복구한다.
git restore --staged 파일명
: 변경 상태를 스테이지에서 워킹 디렉토리로 돌려놓는다.
git restore --source=(헤드 or 커밋 해시) 파일명
: 파일을 특정 커밋의 상태로 되돌린다. HEAD~로 사용해도 무방하다.
3. reset으로 사라진 커밋을 복구하기
- reflog는 프로젝트가 위치한 커밋이 바뀔 때마다 기록되는 내역을 보여주고 이를 사용하여 reset하기 이전 시점으로 프로젝트를 복구할 수 있다.
git reflog
으로 원하는 시점의 해시를 선택하고 git reset --hard 해시
를 입력하면 된다.