b784840ca8
git-commit(1) says ISO-8601 is one of our supported date format. ISO-8601 allows timestamps to have a fractional number of seconds. We represent time only in terms of whole seconds, so we never bothered parsing fractional seconds. However, it's better for us to parse and throw away the fractional part than to refuse to parse the timestamp at all. And refusing parsing fractional second part may confuse the parse to think fractional and timezone as day and month in this example: 2008-02-14 20:30:45.019-04:00 While doing this, make sure that we only interpret the number after the second and the dot as fractional when and only when the date is known, since only ISO-8601 allows the fractional part, and we've taught our users to interpret "12:34:56.7.days.ago" as a way to specify a time relative to current time. Reported-by: Brian M. Carlson <sandals@crustytoothpaste.net> Helped-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
30 lines
984 B
Plaintext
30 lines
984 B
Plaintext
DATE FORMATS
|
|
------------
|
|
|
|
The `GIT_AUTHOR_DATE`, `GIT_COMMITTER_DATE` environment variables
|
|
ifdef::git-commit[]
|
|
and the `--date` option
|
|
endif::git-commit[]
|
|
support the following date formats:
|
|
|
|
Git internal format::
|
|
It is `<unix timestamp> <time zone offset>`, where `<unix
|
|
timestamp>` is the number of seconds since the UNIX epoch.
|
|
`<time zone offset>` is a positive or negative offset from UTC.
|
|
For example CET (which is 1 hour ahead of UTC) is `+0100`.
|
|
|
|
RFC 2822::
|
|
The standard email format as described by RFC 2822, for example
|
|
`Thu, 07 Apr 2005 22:13:13 +0200`.
|
|
|
|
ISO 8601::
|
|
Time and date specified by the ISO 8601 standard, for example
|
|
`2005-04-07T22:13:13`. The parser accepts a space instead of the
|
|
`T` character as well. Fractional parts of a second will be ignored,
|
|
for example `2005-04-07T22:13:13.019` will be treated as
|
|
`2005-04-07T22:13:13`
|
|
|
|
+
|
|
NOTE: In addition, the date part is accepted in the following formats:
|
|
`YYYY.MM.DD`, `MM/DD/YYYY` and `DD.MM.YYYY`.
|