개발자로 일한지 1년 7개월..
깃을 안써본건 아닌데 쓸줄 모르는건 아닌데(?) 이제야 이 책을 읽게 된 이유는..
현 직장으로 이직하고 얼마 지나지 않아
이미 운영 배포된 코드를 되돌려야 했는데, 당시에 revert
를 사용해서 되돌렸었다. 되돌리는 과정에서 코드가 꼬이고 있으면 안되는 코드가 존재하고..😱😱
당시 나의 짝꿍과 멘탈이 탈탈 털렸던 경험이 있어서!
코드를 원복하기 위한 명령어를 다시 배워보자.. 라는 생각에! 읽게 된 책이다.
책의 내용은
앞에서는 깃을 다루는 툴을 사용해서 깃에 대한 개념, 툴을 이용한 깃 활용법을 배우고
뒷쪽에서는 명령어를 통해 깃을 다루는 방법을 익힌다.
그 중 revert
와 reset
은 꼭 기억해야겠다 싶어서 작성해본다.
7-2. 작업 되돌리기
변경 사항 또는 버전을 되돌리는 방법에는 크게revert
와reset
이 있다
💡주의! 방법에 따라 입력할 커밋 확인 필요!
git reset --옵션 <되돌아갈 커밋> git revert <취소할 커밋>
reset
예전 커밋으로 되돌아가기git reset <되돌아갈 커밋>
: 예전 커밋으로 되돌아가기종류 | 내용 |
---|---|
soft reset | 커밋만 되돌리기 |
mixed reset | 스테이지까지 되돌리기 |
hard reset | 작업 디렉터리까지 되돌리기 |
깃 저장소에 네 개의 커밋이 쌓여있다고 가정해보자
# 깃 로그 보기
git log --oneline
soft reset
a.txt
파일에 D를 추가한 뒤 스테이지로 추가한 순간으로 되돌린다
git reset --soft <되돌아갈 커밋>
mixed reset
스테이지에 추가하고 커밋한 사실을 되돌린다으로 되돌린다
mixed reset
은 커밋한 사실과 스테이지에 추가한 사실만을 되돌릴 뿐 파일을 수정한 내역까지 되돌리지는 않는 방식이다
아무 옵션없이 git reset
만 한다면 mixed reset
와 같다
git reset --mixed <되돌아갈 커밋>
hard reset
git reset --hard <되돌아갈 커밋>
revert
취소된 새로운 커밋 만들기해당 커밋을 취소한 새로운 커밋을 추가하는 방식
git revert <취소할 커밋>
별 내용 없어보이지만 자주 사용하지 않고, 되돌리는 상황 자체가 유쾌한 상황은 아니기 때문에 더 어렵게 느껴졌던걸까..😨
나를 위해 기록하는 블로그! 오늘도 그 역할을 다 했다!!!!🫠🫠