滴水可以汇成江河,粒米可以聚成谷仓。——萨迪
当你需要修改 Git 提交的时间,可以根据不同的场景采用不同的方法。下面按场景分类详细介绍各种情况的操作步骤。
如果你的提交还没有被推送到远程仓库,修改最近一次提交的时间相对简单:
git commit --amend --no-edit --date="2024-05-04T01:49:20"
这个命令会更新最后一次提交的时间,而不更改提交信息。
如果你有更改尚未提交,需要先进行提交。可以先正常提交,然后立即修改这个新提交的时间:
git commit -m "Your commit message"
git commit --amend --no-edit --date="2024-05-04T01:49:20"
如果修改的是已经推送到远程的最近一次提交,你需要小心操作,因为这会改变提交的哈希值。操作步骤如下:
git commit --amend --no-edit --date="2024-05-04T01:49:20"
git push --force
这个操作会强制覆盖远程仓库的历史,可能会影响其他协作者。在执行之前应当确保所有团队成员都被通知。
要修改历史中某一次具体的提交,你需要使用交互式 rebase:
git rebase -i 提交哈希值^
# 例
git rebase -i a1b2c3d^
在编辑器中将要修改的提交前的 pick
改为 edit
,保存退出。然后:
git commit --amend --date="2024-05-04T01:49:20"
git rebase --continue
如果需要修改一系列的提交,可以扩展上面的方法,选定更早的起点进行 rebase:
git rebase -i HEAD~n # n 是从最近的提交向回的提交数量
在编辑器中,对需要修改的每一次提交都选择 edit
,然后按上述步骤逐一修改每次提交的日期。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有