git에서는 "git commit --amend" 명령을 사용하여 커밋 시간을 수정할 수 있습니다. 이 방법은 가장 최근 제출 날짜를 수정할 수 있을 뿐만 아니라 지정된 제출 날짜도 수정할 수 있습니다. 형식은 "ISO -8601" 형식이어야 하며 구문은 "GIT_COMMITTER_DATE="time" git commit --amend --date="time""입니다.
이 문서의 운영 환경: Windows 10 시스템, Git 버전 2.30.0, Dell G3 컴퓨터.
1. 최신 커밋의 작성자 날짜와 제출자 날짜를 수정하세요
최신 커밋의 작성자 날짜와 제출자 날짜를 수정하려면 git commit을 사용하세요. -amend
참고: 날짜 형식은 ISO-8601 형식이어야 합니다
GIT_COMMITTER_DATE="2017-10-08T09:51:07" git commit --amend --date="2017-10-08T09:51:07"
2. 특정 제출물의 작성자 날짜와 제출자 날짜를 수정하세요
특정 제출물의 작성자를 변경하려는 경우(변경 가능) 가장 최근 또는 최신이 아님) 날짜 및 제출자 날짜, 대화형 리베이스를 사용할 수 있습니다:
실행 git rebase -i COMMIT_SHA는 수정할 커밋의 이전 커밋의 커밋 샤입니다.
현재 git 로그 제출 정보는 다음과 같습니다
admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master) $ git log --oneline 2fe64c4 (HEAD -> master) modify Readme.md 3 6b98331 modify Readme.md 2 98ddd80 modify Readme.md 1 fcfc064 add Readme.md
커밋 6b98331 수정 Readme.md 2의 작성자 날짜와 제출자 날짜를 이때 수정해야 한다고 가정합니다
수정 단계는 다음과 같습니다.
대화형 리베이스 명령 git rebase -i 98ddd80
을 실행합니다. 팝업 vi 편집 정보에서 6b98331 제출 전 선택을 e로 변경한 후 다음을 실행합니다. wq Save
e 6b98331 modify Readme.md 2 # 此处原为pick,将pick修改为e / edit pick 2fe64c4 modify Readme.md 3 # Rebase 98ddd80..2fe64c4 onto 98ddd80 (2 commands) # # Commands: # p, pick <commit> = use commit # r, reword <commit> = use commit, but edit the commit message # e, edit <commit> = use commit, but stop for amending # s, squash <commit> = use commit, but meld into previous commit # f, fixup <commit> = like "squash", but discard this commit's log message # x, exec <command> = run command (the rest of the line) using shell # b, break = stop here (continue rebase later with 'git rebase --continue') # d, drop <commit> = remove commit # l, label <label> = label current HEAD with a name # t, reset <label> = reset HEAD to a label # m, merge [-C <commit> | -c <commit>] <label> [# <oneline>] # . create a merge commit using the original merge commit's # . message (or the oneline, if no original merge commit was # . specified). Use -c <commit> to reword the commit message. # # These lines can be re-ordered; they are executed from top to bottom. # # If you remove a line here THAT COMMIT WILL BE LOST. # # However, if you remove everything, the rebase will be aborted.
Execute GIT_COMMITTER_DATE= "2021-10-22T15:10 :07" git commit --amend --date="2021-10-22T15:10:07" 작성자 날짜와 제출자 날짜를 모두 2021-10-22T15:10:07로 수정합니다. 그런 다음 팝업 vi 정보 편집 창에서 커밋 로그를 수정하도록 선택한 다음 :wq를 실행하여 저장
한 다음 git rebase --continue를 실행하여 모든 변경 사항이 저장될 때까지 다음 커밋으로 이동할 수 있습니다. 완료 후 git log를 사용하여 제출 정보를 보면 제출 정보가 수정된 것을 확인할 수 있습니다
위 예제의 전체 로그는 다음과 같습니다.
admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master) $ git log --oneline 2fe64c4 (HEAD -> master) modify Readme.md 3 6b98331 modify Readme.md 2 98ddd80 modify Readme.md 1 fcfc064 add Readme.md admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master) $ git rebase -i 98ddd80 Stopped at 6b98331... modify Readme.md 2 You can amend the commit now, with git commit --amend Once you are satisfied with your changes, run git rebase --continue admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master|REBASE 1/2) $ GIT_COMMITTER_DATE="2021-10-22T15:10:07" git commit --amend --date="2021-10-22T15:10:07" [detached HEAD 137f41d] modify Readme.md 2 Date: Fri Oct 22 15:10:07 2021 +0800 1 file changed, 16 insertions(+) admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master|REBASE 1/2) $ git status interactive rebase in progress; onto 98ddd80 Last command done (1 command done): edit 6b98331 modify Readme.md 2 Next command to do (1 remaining command): pick 2fe64c4 modify Readme.md 3 (use "git rebase --edit-todo" to view and edit) You are currently editing a commit while rebasing branch 'master' on '98ddd80'. (use "git commit --amend" to amend the current commit) (use "git rebase --continue" once you are satisfied with your changes) nothing to commit, working tree clean admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master|REBASE 1/2) $ git rebase --continue Successfully rebased and updated refs/heads/master. admin@DESKTOP-PC MINGW64 /e/TestProj/ModifyTimeTest (master) $ git status On branch master nothing to commit, working tree clean
권장 학습: "
Git Tutorial위 내용은 Git에서 커밋 시간을 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!