summaryrefslogtreecommitdiff
path: root/date.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-10-03 10:03:22 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-10-03 10:03:22 (GMT)
commit5e5b2b98c844c791c87a3a084d7748b9d6888a0a (patch)
tree08c211a872faf7738748578c03bfbce89cef8041 /date.c
parentfed276e7524d6a80ae5dec037d586bd28543fc79 (diff)
parent96b2d4fa927c5055adc5b1d08f10a5d7352e2989 (diff)
downloadgit-5e5b2b98c844c791c87a3a084d7748b9d6888a0a.zip
git-5e5b2b98c844c791c87a3a084d7748b9d6888a0a.tar.gz
git-5e5b2b98c844c791c87a3a084d7748b9d6888a0a.tar.bz2
Merge branch 'ap/dateformat'
* ap/dateformat: Add a test script for for-each-ref, including test of date formatting dateformat: parse %(xxdate) %(yydate:format) correctly Make for-each-ref's grab_date() support per-atom formatting Make for-each-ref allow atom names like "<name>:<something>" parse_date_format(): convert a format name to an enum date_mode
Diffstat (limited to 'date.c')
-rw-r--r--date.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/date.c b/date.c
index 93bef6e..8f70500 100644
--- a/date.c
+++ b/date.c
@@ -584,6 +584,26 @@ int parse_date(const char *date, char *result, int maxlen)
return date_string(then, offset, result, maxlen);
}
+enum date_mode parse_date_format(const char *format)
+{
+ if (!strcmp(format, "relative"))
+ return DATE_RELATIVE;
+ else if (!strcmp(format, "iso8601") ||
+ !strcmp(format, "iso"))
+ return DATE_ISO8601;
+ else if (!strcmp(format, "rfc2822") ||
+ !strcmp(format, "rfc"))
+ return DATE_RFC2822;
+ else if (!strcmp(format, "short"))
+ return DATE_SHORT;
+ else if (!strcmp(format, "local"))
+ return DATE_LOCAL;
+ else if (!strcmp(format, "default"))
+ return DATE_NORMAL;
+ else
+ die("unknown date format %s", format);
+}
+
void datestamp(char *buf, int bufsize)
{
time_t now;