인프런 - 제대로 파는 Git & Github - by 얄코
🎃 과거 커밋 내역을 다양한 방법으로 수정 가능하다.
🎈 git rebase -i 해시코드
해당 커밋들의 pick
을 어떻게 수정하고 저장하는지에 따라 각 커밋에 대해서 뭘 할지를 지정할 수 있다. (해당 명령어로 교체해주고 엔터쳐서 원하는 과정 진행하면 된다.)
🗑 git clean
💡 흔히 쓰이는 조합: git clean -df
🎈 git restore
git store를 사용해서 특정 파일을 working directory에서 또는 stage에서 되돌릴 수 있게 된다.
🎃 git store 파일명
: 해당 파일 커밋하지 않은 변경사항 되돌린다.
🎈 git restore .
: 모든 파일 커밋하지 않은 변경사항 되돌린다. (그냥 이전 커밋된 상태 그대로)
🎈 git restore --staged 파일명
: 이런 식으로 뒤에 원하는 파일명 적어주면 해당 파일 working directory로 되돌려!
🎈 git restore --staged .
: 모든 파일 되돌린다.
🎈 git restore --source=(헤드 또는 커밋 해시) 파일명
만약 git reset --hard HEAD^^^^^^^^^^^^
이런 식으로 과거 오래 전 버전으로 reset을 해버린 경우 어떻게 하면 되돌릴 수 있을까?
🎈 Git에는 reset한 것도 복구할 수 있는 기능이 있다 !
reflog
명령어를 이용하는 것인데, reflog는 프로젝트가 위치한 커밋이 바뀔 때마다 기록되는 내역을 보여주고 이를 사용하여 reset하기 이전 시점으로 프로젝트를 복구할 수 있다.
git reflog
를 하면 이런 식으로 되는데, 내가 수행한 Git 작업을 기준으로 과거 내역을 살펴보고 원하는 시점으로 프로젝트를 되돌릴 수 있다.