728x90
▪ Git을 이용하면 기록된 커밋을 기준으로 이전 상태로 되돌아갈 수 있다.
▪ Git에서 코드 작업을 되돌리는 방법은 크게 다음 두 가지가 있다: Reset, Revert
1. Reset
▪ 커밋을 기준으로 이전 코드로 되돌리는 방법
1) Reset 명령어
▪ $git reset <option> <커밋_ID>
- Reset 명령어를 이용하면 지정된 커밋 코드로 되돌아감
▪ reset 명령어는 3가지 옵션 중 하나를 사용해야 함: soft, mixed, hard
옵션 | 설명 |
soft | - 스테이지 영역을 포함한 상태로 복원함 - 복귀하면서 스테이지 영역의 상태도 같이 복귀함 - 파일을 수정하고, add 명령어로 스테이지 영역에 올려 커밋을 실행하기 직전의 단계로 되돌림 - soft 옵션은 단순히 HEAD의 위치를 이동하는 역활만 함 - soft 옵션을 사용하면 마지막 커밋을 수정할 수 있음 |
mixed | - soft 옵션과 다른점: soft옵션과 다르게 리셋 후 스테이지 상태까지 복원하지 않음 - 스테이지 영역은 복원되지 않았으므로, 커밋을 실행하기 위해선 add 명령어를 먼저 실행해야 함 |
hard | - hard와 다른 옵션들의 차이점 (1) 다른 옵션들: -- 이전 커밋으로 되돌리는 과정에서 삭제되는 내용은 없음 -- 모든 작업 내용들이 스테이지 영역 (soft) 혹은 워킹 디렉토리(mixed) 에 존재 (2) hard 옵션 -- 리셋되는 복귀 시점의 커밋 상태와 해당 커밋의 워킹 디렉토리까지 모두 되돌림 -- reset --hard 명령어를 사용한 커밋 이후의 모든 내용은 삭제됨 -- hard 옵션을 삭제하면 복귀 시점 이후의 워킹 디렉토리 내용들 모두 삭제됨 |
2. Revert
- Revert는 기존 커밋은 남겨두고 취소에 대한 새로운 커밋을 생성함
- 취소 커밋은 지정한 커밋을 삭제하지 않으며 삭제를 위한 새로운 커밋을 생성함
- 리버트는 한번에 커밋 하나만 취소할 수 있음
- 여러 커밋을 리버트 시키려면 최신 커밋부터 순차적으로 취소해야 함
- 명령어: $git revert <Commit_ID>
728x90
'컴퓨터 & IT (Computer & IT) > Github' 카테고리의 다른 글
[GitHub] remote: Support for password authentication was removed on August 13, 2021 (0) | 2021.12.12 |
---|---|
[GitHub] 병합과 충돌 (0) | 2021.04.24 |
[Github] GitHub과 관련된 국내 도서 (0) | 2021.04.23 |
[Github] 브랜치 (0) | 2021.04.06 |
[Github] 서버 저장소 관련 내용 정리 (0) | 2021.03.07 |
댓글