From 4e244cbc5cc4c8a43982d4023bc0d9fb0b0c7d43 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Thu, 8 Feb 2007 21:58:33 +0100 Subject: log --reflog: honour --relative-date If you say "git log -g --relative-date", it is very likely that you want to see the reflog names in terms of a relative date. Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano diff --git a/log-tree.c b/log-tree.c index 85acd66..4e3c7fd 100644 --- a/log-tree.c +++ b/log-tree.c @@ -226,7 +226,8 @@ void show_log(struct rev_info *opt, const char *sep) putchar(opt->commit_format == CMIT_FMT_ONELINE ? ' ' : '\n'); if (opt->reflog_info) { show_reflog_message(opt->reflog_info, - opt->commit_format == CMIT_FMT_ONELINE);; + opt->commit_format == CMIT_FMT_ONELINE, + opt->relative_date); if (opt->commit_format == CMIT_FMT_ONELINE) { printf("%s", sep); return; diff --git a/reflog-walk.c b/reflog-walk.c index 653ec95..afe1577 100644 --- a/reflog-walk.c +++ b/reflog-walk.c @@ -227,7 +227,8 @@ void fake_reflog_parent(struct reflog_walk_info *info, struct commit *commit) commit->object.flags &= ~(ADDED | SEEN | SHOWN); } -void show_reflog_message(struct reflog_walk_info* info, int oneline) +void show_reflog_message(struct reflog_walk_info* info, int oneline, + int relative_date) { if (info && info->last_commit_reflog) { struct commit_reflog *commit_reflog = info->last_commit_reflog; @@ -236,7 +237,7 @@ void show_reflog_message(struct reflog_walk_info* info, int oneline) info = &commit_reflog->reflogs->items[commit_reflog->recno+1]; if (oneline) { printf("%s@{", commit_reflog->reflogs->ref); - if (commit_reflog->flag) + if (commit_reflog->flag || relative_date) printf("%s", show_date(info->timestamp, 0, 1)); else printf("%d", commit_reflog->reflogs->nr @@ -245,9 +246,10 @@ void show_reflog_message(struct reflog_walk_info* info, int oneline) } else { printf("Reflog: %s@{", commit_reflog->reflogs->ref); - if (commit_reflog->flag) - printf("%s", show_rfc2822_date(info->timestamp, - info->tz)); + if (commit_reflog->flag || relative_date) + printf("%s", show_date(info->timestamp, + info->tz, + relative_date)); else printf("%d", commit_reflog->reflogs->nr - 2 - commit_reflog->recno); diff --git a/reflog-walk.h b/reflog-walk.h index e63d867..a4f7015 100644 --- a/reflog-walk.h +++ b/reflog-walk.h @@ -6,6 +6,6 @@ extern void add_reflog_for_walk(struct reflog_walk_info *info, struct commit *commit, const char *name); extern void fake_reflog_parent(struct reflog_walk_info *info, struct commit *commit); -extern void show_reflog_message(struct reflog_walk_info *info, int); +extern void show_reflog_message(struct reflog_walk_info *info, int, int); #endif -- cgit v0.10.2-6-g49f6