커밋 날짜를 수정하는 방법
Updated:
커밋 날짜 수정이 필요한 이유
-
코딩이나 문서 작업을 진행했지만, 12시가 넘어가 commit을 해버린 경우, github나 gitlab 등에서는 commit한 날짜와 시간으로 잔디 심기가 진행됩니다.
-
이렇게 특정일을 놓쳤을 때 유용하게 사용할 수 있는 방법입니다.
가장 최근 commit일 경우
가장 최근 Commit 날짜를 현재 날짜로 설정
-
$ git commit --amend --no-edit --date "$(date)"
가장 최근 Commit 날짜를 임의의 날짜로 설정
-
$ git commit --amend --no-edit --date "Mon 20 Aug 2018 20:19:19 KST"
""
사이에 설정하고 싶은 날짜와 시간을 기입하면 됩니다.
과거 commit일 경우
- 만약 날짜를 바꿀 commit이 가장 최근 commit이 아니라면 다음과 같이 설정합니다.
해시 값 찾기
-
먼저 git log를 통해 commit 해시 값을 찾습니다.
-
$ git log
-
-
위 명령어를 치면 다음과 같은 화면이 나옵니다.
-
commit 964c654f1af90ca4e2e4608f69268d405436c196 (HEAD -> master, origin/master) Author: 신채린 <chaelinshin96@gmail.com> Date: Mon Sep 7 12:00:30 2020 +0900 Add 20200907 Baekjoon 13458_시험감독 commit 97d77a4c5efbf49404cb6cf55e8e4d1724fb4d5f Author: 신채린 <chaelinshin96@gmail.com> Date: Sat Sep 5 02:42:23 2020 +0900 Add 20200905 JavaScript History commit ce460413b426ac2008e9a1575c2fbff37710173e Author: 신채린 <chaelinshin96@gmail.com> Date: Sat Sep 5 01:12:26 2020 +0900 Add 20200826 JavaScript For Loop and Sort
-
- commit 해시 값이란 commit 우측에 써져있는 값을 말합니다.
- 기본적으로 rebase 명령어를 이용할 때 는 변경하고자 하는 commit의 이전 commit을 기준으로 기입해줍니다.
edit 적용하기
- 이후 변경하고자 하는 commit을 선택 내용을 키보드 `i`를 눌러 edit으로 바꿔 적용하면 됩니다.
날짜 변경하기
-
그 이후 다음 명령어로 커밋 내역의 날짜를 변경합니다.
-
$ GIT_COMMITTER_DATE="{원하는 날짜}" git commit --amend --no-edit --date "{원하는 날짜}"
- 예시:
GIT_COMMITTER_DATE="Jun 16 10:00:00 2020 KST" git commit --amend --no-edit --date "Jun 16 10:00:00 2020 KST"
-
변경 내용 적용하기
-
날짜를 변경한 후, 이 변경 내역을 적용하고 싶다면 다음 코드를 작성합니다.
-
$ git rebase --continue
-
푸시하기
-
변경 내용을 적용했다면, 깃허브에 푸시합니다.
-
$ git push -f origin master
Leave a comment