Git 2.6+ (Q3 2015) add a new option.
See commit e4f031e (30 Jun 2015), and commit aa1462c, commit a5481a6, commit b7c1e11 (25 Jun 2015) by Jeff King (peff).
(Merged by Junio C Hamano -- gitster -- in commit d939af1, 03 Aug 2015)
introduce "format" date-mode
This feeds the format directly to strftime.
Besides being a little more flexible, the main advantage is that your system
strftime may know more about your locale's preferred format (e.g., how to spell the days of the week).
--date=format:... feeds the format ... to your system strftime.
Use --date=format:%c to show the date in your system locale's preferred format.
See the strftime manual for a complete list of format placeholders.
Davide Cavestro proposes in the comments the example:
git commit -m "Test" --date=format:relative:5.hours.ago
Original answer (mid 2014)
The --date option (introduced in commit 02b47cd in Dec. 2009, for git1.7.0) uses the same format than for GIT_AUTHOR_DATE, with date formats tested in commit 96b2d4f:
There you can see the various format accepted:
- rfc2822:
Mon, 3 Jul 2006 17:18:43 +0200
- iso8601:
2006-07-03 17:18:43 +0200
- local:
Mon Jul 3 15:18:43 2006
- short:
2006-07-03 (not in 1.9.1, works in 2.3.0)
relative: see commit 34dc6e7:
5.seconds.ago,
2.years.3.months.ago,
'6am yesterday'
raw: see commit 7dff9b3 (git 1.6.2, March 2009)
internal raw git format - seconds since epoch plus timezone
(put another way: 'date +"%s %z"' format)
- default:
Mon Jul 3 17:18:43 2006 +0200
ADTC asks and answers in the comments:
Does it accept 2006-07-03 15:18:43 for local?
Yes it does work and it takes the local time zone automatically.
With that format I don't need to bother which day of the week it is (Sun, Mon, etc).