【问题标题】:How does Git parse the dates?Git如何解析日期?
【发布时间】:2015-11-16 19:09:31
【问题描述】:

我试图在纪元时间之前进行提交,但似乎如果我这样做,git 表示日期是 2014 年的某个时间:

$ git commit -m 'Minor' --date 'Wed Dec 31 00:00:00 1969 +0000' . --amend
[master 4d1ea4d] Minor
 Date: Tue Dec 30 23:00:00 2014 +0200
 1 file changed, 2 insertions(+)

但是,如果我在纪元时间内进行提交,它确实有效:

$ git commit -m 'Minor' --date 'Thu Jan 1 00:00:00 1970 +0000' . --amend
[master d0623ee] Minor
 Date: Thu Jan 1 00:00:00 1970 +0000
 1 file changed, 2 insertions(+)

为什么?如何强制 Git 在1970 之前接受我的提交?我记得我曾经做过,但使用的是旧版本的 git。目前我正在使用git version 2.1.4。也许更改源代码并重新编译我自己的git 会起作用吗?

出于实验原因,我需要这个——以防你们中的一些人问为什么。 :)

【问题讨论】:

    标签: git epoch


    【解决方案1】:

    这还不可能,正如我在“Is it possible to set a git commit to have a timestamp prior to 1970?”中提到的那样

    您可以存储 1970 年之前的日期,但不能保证它会被正确表示。

    【讨论】:

    • 谢谢,但是我该如何存储呢?
    • @IonicăBizău 你有一些技术来存储stackoverflow.com/a/24977895/6309 中讨论的时间戳。
    • 是的,明白了! :) 谢谢!
    猜你喜欢
    • 2020-07-26
    • 1970-01-01
    • 2011-11-20
    • 1970-01-01
    • 2016-02-15
    • 2010-11-03
    • 2014-09-26
    • 2013-07-28
    • 2016-02-15
    相关资源
    最近更新 更多