1

Atlassian Stash 的屏幕截图

Stash 说最新的提交是在 8 分钟前提交的。那是我在本地提交更改的时候。然后,我在 7 分钟后(屏幕截图前 1 分钟)将更改推送到 Stash 存储库。

我对使用的是本地提交日期感到有些惊讶。真的应该是这样吗?

4

1 回答 1

3

在 Git 中,提交是不可变的。每个提交包括

此时项目快照的顶级树;从您的 user.name 和 user.email 配置设置中提取的作者/提交者信息,以及当前时间戳;一个空行,然后是提交消息。

(强调我的)

使用本地 refs 更新远程 refs,同时发送完成给定 refs 所需的对象。

由于 push 将您的对象发送到服务器,并且您的对象捕获了提交的时间戳;从逻辑上讲,服务器唯一能做的就是向您显示捕获的时间戳。

Stash 可以通过两种方式向您显示推送的时间。

  1. 修改提交并更新它们的时间戳(这可能不是世界上最糟糕的想法,但它非常接近)。
  2. 维护自己的一组特定提交何时被推送的时间戳,并显示该信息以及提交中记录的内容。这是可行的,但这是额外的工作,而且好处并不是立即显而易见的。
于 2012-09-04T14:54:19.053 回答