You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改多个Git提交的作者/提交者信息并保留原提交时间戳?

批量修改Git提交作者信息并保留原时间戳

你之前使用的命令中,--reset-author参数会强制将作者提交时间重置为当前时间。要在修改作者信息的同时保留原时间戳,需要调整命令逻辑,手动指定作者信息并复用原提交的时间:

执行命令

git rebase -r --root --exec "GIT_COMMITTER_DATE=\"$(git show --format=%cd HEAD)\" git commit --amend --no-edit --author=\"你的名字 <你的正确邮箱>\""

命令说明

  • git show --format=%cd HEAD:提取当前正在处理的提交的原时间戳
  • GIT_COMMITTER_DATE=...:将提交者时间设为原时间,避免被重置为当前时间
  • --author="你的名字 <你的正确邮箱>":直接替换为正确的作者姓名和邮箱,不会触发时间重置
  • --no-edit:保留原提交的说明文字,无需手动编辑

注意事项

  • 务必替换命令中的你的名字和你的正确邮箱为实际信息
  • 若提交已推送到远程仓库,修改完成后需要执行git push --force强制推送,操作前请和团队成员沟通,避免冲突
  • 如需修改特定范围的提交,将--root替换为目标提交的父哈希(比如修改某提交之后的所有记录,用git rebase -r <目标提交哈希>^ --exec ...)

内容的提问来源于stack exchange,提问作者dreambold

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 01:59:56