반응형
1일 1 커밋을 시행하던 도중, 그저께 깜빡하고 master에 커밋을 하지 못했다. rebase의 날짜 조작 기능으로 잔디를 심어보았다.
1. 깃 로그 열기
$git log
다음과 같이 커밋 기록이 뜬다
commit aada91152d63a98e34c5c2570d5e2d0b54d21ed1 (HEAD -> master, origin/master, origin/HEAD)
Author: devhealer email@email
Date: Tue Jul 28 20:00:01 2022 +0900
백준 url
commit bd2c974a17a0b3c6cd4418815ee5eca68dec7e69
Author: devhealer email@email
Date: Fri Jul 22 22:42:37 2022 +0900
delete v1
commit f0a6170cb014efa957e8681004b5838ba47359e4
Author: devhealer email@email
Date: Fri Jul 22 22:11:42 2022 +0900
- commit 옆에 긴 문자열이 커밋 해쉬이다.
- q를 눌러 상태를 종료한다.
2. git rebase -i {커밋 해쉬}
수정하고 싶은 날짜 이전의 커밋을 골라 해당 커밋 해쉬값을 복사한다.
나는 7월 28일의 커밋 기록을 26일로 바꾸고 싶다. 그러므로 그 이전인 7월 22일 커밋한 'delete v1'에 해당하는 커밋 해쉬를 복사했다.
그리고 다음과 같은 명령어를 친다.
$git rebase -i {복사한 커밋 해쉬}
- 그 후 i를 누르면 insert모드가 된다. 가장 윗 줄의 pick을 edit으로 바꾼다.
esc -> :wq를 눌러 수정한 값을 저장 후 종료한다.
3\ . git commit amend하기
$git commit --amend --no-edit --date="{조작하고 싶은 날짜}"
예시)
$git commit --amend --no-edit --date="{Jul 26 22:00:01 2022 +0900}"
나는 7월 26일에 잔디를 못심었으므로 26일 10시 1분으로 날짜를 지정했다.
4. git rebase --continue
- 날짜 수정 후 rebase를 진행한다.
$git rebase --continue
5. git push -f origin master
- 수정한 rebase 내용을 master에 강제 푸쉬(-f 옵션 사용).
$git push -f origin master
이제 모든 과정이 끝났다. 잔디를 확인하면 7월 26일 잔디가 심어진 것을 확인할 수 있다.
반응형
'백엔드, 기타 > Git' 카테고리의 다른 글
git command 정리 (1) | 2022.07.19 |
---|---|
[Git] config user.name과 user.email 삭제 하기/ 등록하기 (0) | 2020.08.27 |