[GIT] 명령어 정리 - ③ (코드 되돌리기)

코드 복구 명령어들은 외우는 것보다는 필요할 때 찾아서 쓰는 느낌으로

restore

git restore 파일명

restore 명령어를 사용하면 특정 파일을 최근 커밋 상태로 되돌릴 수 있습니다.


git restore --source 커밋ID 파일명

위 방식은 파일을 특정 커밋 상태로 되돌릴 수 있습니다.


git restore --staged 파일명

파일의 스테이징 상태(git add한 상태)를 취소할 수 있습니다.


revert

git revert 커밋ID

특정 커밋을 취소하는 명령어입니다. 깃로그상태 현재 a,b,c의 텍스트 파일을 만들고 각각 커밋된 상태입니다.

git revert 2ff6fbb

b.txt의 커밋을 취소하고자 위 명령어를 입력하면 2ff6fbb 커밋은 취소되고 b.txt파일도 없어집니다. git-revert git-revert-image https://codingapple.com/course/git-and-github/

git revert 커밋ID 커밋ID

여러 개의 커밋을 동시에 취소할 수 있습니다.


git revert HEAD

최근 커밋을 HEAD라는 키워드로 취소할 수 있습니다.

revertmerge commit도 역시 취소가 가능합니다.


reset

git reset --hard 커밋ID

위 명령어는 해당 커밋이 생성되었던 시기로 돌아가게 됩니다.

작업 폴더와 안에 파일도 모두 그 시기로 돌아가므로 사용 시 주의해야 됩니다.

위험하므로 협업에서는 거의 사용하지 않는다고 합니다. git-reset-image https://codingapple.com/course/git-and-github/


git reset --soft 커밋ID

soft옵션은 해당 커밋 이후의 변경 사항을 지우는 hard 옵션과는 다르게

해당 커밋 이후의 변경 사항을 스테이징 해놓습니다