Git Atlassian Stash显示更改何时在本地提交,而不是何时推送到存储库

Git Atlassian Stash显示更改何时在本地提交,而不是何时推送到存储库,git,bitbucket-server,Git,Bitbucket Server,斯塔什说,最近一次犯罪是在8分钟前犯下的。那是我在当地做出改变的时候。7分钟后(截图前1分钟),我将更改推送到存储库 我有点惊讶,现在使用的是本地提交日期。这真的应该是这样吗?在Git中,提交是不可变的。每次提交 该点上项目快照的顶级树;从user.name和user.email配置设置中提取的具有当前时间戳的作者/提交人信息;一个空行,然后是提交消息 (强调矿山) 使用本地参照更新远程参照,同时发送完成给定参照所需的对象 因为push将对象发送到服务器,并且对象捕获提交的时间戳;从逻辑上讲,服

斯塔什说,最近一次犯罪是在8分钟前犯下的。那是我在当地做出改变的时候。7分钟后(截图前1分钟),我将更改推送到存储库


我有点惊讶,现在使用的是本地提交日期。这真的应该是这样吗?

在Git中,提交是不可变的。每次提交

该点上项目快照的顶级树;从user.name和user.email配置设置中提取的具有当前时间戳的作者/提交人信息;一个空行,然后是提交消息

(强调矿山)

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

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

有两种方式可以让你知道推的时间

  • 修改提交并更新提交上的时间戳(这可能不是世界上最糟糕的想法,但已经很接近了)
  • 维护它自己的一组推送特定提交的时间戳,并显示该信息以及记录到提交中的内容。这是可行的,但这是额外的工作,其好处并不明显
    我想,服务器可以显示推送日期,例如从reflog推断的推送日期。但是的,这不是一个承诺日期。推送就是推送,而不是提交。@MichałPolitowski看起来你是对的,尽管在裸存储库中重新登录。