更改 Git 提交的日期时间 [重复]

Posted

技术标签:

【中文标题】更改 Git 提交的日期时间 [重复]【英文标题】:Change datetime of a Git commit [duplicate] 【发布时间】:2018-04-25 06:55:31 【问题描述】:

是否可以在 Git 中更改提交日期?

如果是,此修改是否留下任何痕迹?

基本上我想更改提交的日期,但任何人都不应该看到我更改了日期。

据我研究,可以使用git filter-branch 更改日期,但我不知道这是否会留下任何历史记录。

【问题讨论】:

如果您的目标是更改已推送到共享上游的提交,则必须执行强制推送,这肯定会被你的队友(或任何人)。 @OliverCharlesworth 嘿,感谢您的回复。只有master分支,还是不行?我查看了这篇文章:***.com/questions/454734/… 重要的不是分支的数量,而是要修改的分支是否已经推送。 @kejsiStruga 所以……你已经推送了这个分支,还是这个分支已经公开共享了? @OliverCharlesworth 是的,我已经推送了提交 【参考方案1】:

不可能在 Git 中更改提交日期,除非有大量黑客攻击。但是,可以重写一个新的提交来代替旧的提交。您可能能够在某个时间重写某个提交。交互式 rebase 和 filter-branch 是重写分支历史的两种方式。但在这两种情况下,您都会很明显地看到一个或多个提交已被您重写。

一般来说,您应该尽可能避免重写历史记录。这个答案假设有问题的分支已经公开共享,即其他用户已经看到你的分支。如果您的分支从未被推送,那么从技术上讲,您可以随心所欲地重写它,并且没有人能够从原始提交中分辨出重写的提交;他们只会在遥控器上看到一堆提交。

【讨论】:

以上是关于更改 Git 提交的日期时间 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

是否可以更改 git 上的提交日期? [复制]

如何设置 git 的提交和作者日期 [重复]

更改 git 标签的日期(或基于它的 GitHub Release)

Git合并提交[重复]

如何在不更改日期的情况下编辑提交作者?

如何更改 Git 日志日期格式