git clean "옵션"
git에서 추적하지 않는 파일들 삭제합니다.
옵션 | 설명 |
---|---|
-n | 삭제될 파일들 보여줍니다. |
-i | 인터렉티브 모드로 시작합니다. |
-d | 폴더를 포함하여 삭제합니다. |
-f | 강제로 바로 지웁니다. |
-x | .gitignore에 등록된 파일들도 삭제합니다. |
위의 옵션들을 조합하여 사용할 수 있습니다.
특정 파일을 지정된 상태로 복구합니다.
git restore "파일명"
현재 git에서 관리되고 있는 파일중, staging area로 가지 않은 파일들의 변화를 모두 제거합니다.
git restore .
명령어를 통해 전체 파일의 변화를 제거할 수 있습니다.
working directory에 있는 변화를 제거합니다.
git restore --staged "파일명"
현재 git에서 관리되고 있는 파일중, staging area에 있는 파일의 변화를 working directory로 보냅니다.
이후, git restore .
을 사용해서 모든 변화를 제거할 수 있습니다.(최초 commit의 내용만이 남습니다.)
git restore --source=(헤드 또는 커밋 해시) 파일명
특정 commit의 커밋 해시와 파일명으로 지정하여 원하는 파일만 해당 상태의 코드로 되돌릴 수 있습니다.
git reflog
프로젝트가 위치한 커밋이 바뀔 때마다 기록되는 내용을 보여주고,
이를 사용하여 reset하기 이전 시점으로 프로젝트를 복구할 수 있습니다.
d8a14fe HEAD@{1}: reset: "내용1"
c1654b9 HEAD@{2}: reset: "내용2"
git reset --hard c1654b9
조회된 해당 내용의 해쉬 값을 이용하여 다시 리셋을 진행하면 리셋을 취소할 수 있습니다.