728x90
최근 서버에 잘못된 소스를 올려 원복해야하는 일이 있었는데, 원복에 익숙치 않아 헤매었었다.
인텔리제이를 기준 원복하는 법을 알아보자.
0. Build 툴의 Build History를 통해 복구해야 할 커밋 로그를 확인한다.
1. IntelliJ의 Git 커밋로그에서 원복해야할 커밋들을 드래그한다.
2. Revert Commits를 실행하면 선택한 커밋로그의 반영분이 복구된다.
Reset과 Revert 차이점
Reset: 반영 내역과 커밋 로그까지 함께 되돌린다. (원복 기록이 남지 않음)
Revert: 반영 내역을 되돌리며 되돌린 행위까지 기록으로 남긴다. (원복 기록이 남음)
3. Push하기 전에 복구된 커밋들을 Squash해준다.
Squash: 여러 커밋 로그들을 묶어서 한 개의 커밋으로 Push할 수 있다.
※ 이미 원격저장소에 Push된 커밋들은 위 사진과 같이 Squash기능을 사용할 수 없으므로 주의
(이미 Push된 커밋을 Squash하려면 원격저장소의 커밋로그를 덮어써야 하므로 다른 팀원들에게 Conflict를 일으킬 수 있다.)
처음이 어렵지 두번은 쉽다.
'Git, Github' 카테고리의 다른 글
[Git] Commit History 정리하기 (Rebase, Sublime Merge) (1) | 2021.06.18 |
---|---|
[Git] Git-flow / Git을 사용하여 협업하는 방법 (0) | 2021.06.14 |
이클립스 와 깃 연동시 .gitignore가 적용 안되던 문제 (1) | 2021.05.04 |
[Git] 기본용어와 자주쓰는 명령어들 (0) | 2020.12.24 |
[Git] 간단한 사용법 2 (PULL) (0) | 2020.12.24 |