如何创建一个过去的日期git提交?

时间:2012-11-12 07:52:32

标签: git

我想知道你过去会怎样创建一个提交?

我已经搜索过了,据我所知,可以使用git commit --date""

如果有人能澄清这一点并举例说明日期格式,我将非常感激。

2 个答案:

答案 0 :(得分:5)

例如--date="Wed Feb 16 14:00 2011 +0100"

来自kernel.org:

  

日期格式

     

GIT_AUTHOR_DATE,GIT_COMMITTER_DATE环境变量和   --date选项支持以下日期格式:

     

Git内部格式它在哪里    是UNIX纪元以来的秒数。    是UTC的正偏移或负偏移。对于   示例CET(比UTC早2小时)是+0200。

     

RFC 2822 RFC 2822所述的标准电子邮件格式   例子周四,2005年4月7日22:13:13 +0200。

     

ISO 8601例如,ISO 8601标准规定的时间和日期   2005-04-07T22:13:13。解析器接受空格而不是T   性格也是如此。

来源:http://www.kernel.org/pub/software/scm/git/docs/git-commit.html

答案 1 :(得分:0)

请注意,git 2.0.X / 2.1(2014年第3季度)将接受更多日期格式。

这意味着git commit --date=2.days.ago会起作用!过去很容易设置提交。

commit 14ac286

Jeff King (peff)

commit:接受“--date

的更多日期格式
  

现在我们将“--date”找到的字符串直接传递给fmt_ident函数,该函数将使用我们的严格parse_date对其进行规范化。但是,这意味着“--date=now”或“--date=2.days.ago”等显而易见的事情无效。

     

相反,让我们回到近似函数来为我们处理这个问题。请注意,我们必须首先尝试parse_date,尽管近似会尝试严格解析自己。原因是,近似会抛弃它从严格解析中看到的任何时区信息,我们希望保留它。所以要求:

git commit --date="@1234567890 -0700"
  

继续在-0700中设置日期,无论当地时区是什么。