1

我推送了我的最新更改

git push origin master

然后我用交互式变基修改了提交消息,即

git rebase -i HEAD~5

并在最后一次提交中更改了消息。

这已成功保存,但是当我执行时,git push origin master它只是说Everything up-to-date.

现在 git 历史并没有显示实际所做的措辞更改?

但是,当我执行 agit commit --amend -m"msg"然后尝试推动更改时,就会“看到”。

4

3 回答 3

2

在交互式变基期间,我更改了提交消息......但我没有将第一列('action')从pick更改为reword(或r简称为)。

这样做可以正确应用更改。

于 2014-03-01T14:45:13.193 回答
0

然后在我推送时显示所有最新信息?

一种可能的解释,用 Git 2.18(2018 年第 2 季度)说明:在“ rebase -i”会话期间,代码可能会为较早的“”创建的提交提供较早的时间戳,该时间戳reword已被更正。

请参阅Johannes Sixt ( ) 的提交 12f7bab(2018 年 4 月 18 日(由Junio C Hamano 合并 -- --提交 0657e0f中,2018 年 5 月 8 日)j6t
gitster

sequencer:在提交之前重置提交者日期

现在,当未编辑提交消息时,排序器无需分叉即可提交,所有选择的提交都具有相同的提交者日期。
如果一个提交被改写,它的提交者日期将是一个更晚的时间,因为它是通过运行一个单独的“git commit”实例创建的。

如果改写的提交后面有更多的选择,那些后来的提交将比改写的提交日期更早。这是由 git 缓存GIT_COMMITTER_DATE未设置时使用的默认日期引起的。
在进程内生成提交之前重置缓存日期。

于 2018-05-20T23:19:52.970 回答
-1

因为最后一次提交的提交哈希没有改变。您必须更改上次提交的提交哈希,以便服务器知道您已进行更改。

在进行交互式变基时,您可以使用 reword 或 edit 命令。或者只使用commit --amend。

于 2014-03-01T16:14:15.947 回答