코드를 되돌리는 방법
- reset
- revert
reset
- 커밋을 기준으로 이전 코드로 되돌리는 방법
- 기록한 커밋을 취소한다.
reset 명령어
- git reset [option] [커밋ID]
- soft
- 스테이지 영역을 포함한 상태로 복원한다.
- add 명령어로 스테이지 영역에 올려 커밋을 실행하기 직전의 단계로 되돌린다.
- mixed
- 스테이지 영역을 포함하지 않은 상태로 복원합니다.
- Default 옵션 값이다.
- add 명령어로 스테이지 영역에 다시 올려서 커밋을 진행해야한다.
- hard
- 실제 파일이 삭제된 이전 상태로 복원합니다.
- 복귀 시작의 커밋 상태와 해당 커밋의 워킹 디렉터리까지 모두 되돌린다.
- 스테이지 reset
- 스테이지 영역 파일을 다시 unstage 상태로 만들때 사용
- git reset [파일이름]
- soft
revert
- 공개한 저장소에서 이전 상태를 되돌리려고 할때 사용
- 기존 커밋을 남겨 두고 취소에 대한 새로운 커밋을 생성한다.
- 한 번에 한커밋만 취소가 가능하다.
revert 명령어
- git revert [커밋ID]
리셋과 리버트 비교
- 둘 다 동작을 취소하고 과거 상태로 되돌릴 때 사용한다.
- 리버트와 리셋은 이전 커밋 정보를 삭제하는지 여부에 대한 차이점이 있다.
- 원격 저장소에 공개한 커밋이라면 특정 커밋을 삭제하는 것은 다수의 사용자와 공유하는 저장소의 커밋 기록이 깨질 수 있기 때문에 revert를 사용하는 것이 좋다.
'Git' 카테고리의 다른 글
[Git 교과서] 11장 서브모듈 (0) | 2023.07.12 |
---|---|
[Git 교과서] 10장 배포 관리와 태그 (0) | 2023.07.07 |
[Git 교과서] 8장 병합과 충돌 (0) | 2023.06.20 |
[Git 교과서] 7장 Stash (0) | 2023.06.15 |
[Git 교과서] 6장-2 Branch (0) | 2023.06.03 |