]> rtime.felk.cvut.cz Git - git.git/blobdiff - reflog-walk.c
Fix --walk-reflog with --pretty=oneline
[git.git] / reflog-walk.c
index 989a7aee95ae2cd5a71e68920df5ca2f69cfef83..8ccbe97760009745b9bbbb123691dcfb7072c87e 100644 (file)
@@ -219,21 +219,32 @@ 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)
+void show_reflog_message(struct reflog_walk_info* info, int oneline)
 {
        if (info && info->last_commit_reflog) {
                struct commit_reflog *commit_reflog = info->last_commit_reflog;
                struct reflog_info *info;
 
-               printf("Reflog: %s@{", commit_reflog->reflogs->ref);
-               info = &commit_reflog->reflogs->items[commit_reflog->recno + 1];
-               if (commit_reflog->flag)
-                       printf("%s", show_rfc2822_date(info->timestamp,
-                                               info->tz));
-               else
-                       printf("%d", commit_reflog->reflogs->nr
-                                       - 2 - commit_reflog->recno);
-               printf("} (%s)\nReflog message: %s",
-                       info->email, info->message);
+               info = &commit_reflog->reflogs->items[commit_reflog->recno+1];
+               if (oneline) {
+                       printf("%s@{", commit_reflog->reflogs->ref);
+                       if (commit_reflog->flag)
+                               printf("%s", show_date(info->timestamp, 0, 1));
+                       else
+                               printf("%d", commit_reflog->reflogs->nr
+                                      - 2 - commit_reflog->recno);
+                       printf("}: ");
+               }
+               else {
+                       printf("Reflog: %s@{", commit_reflog->reflogs->ref);
+                       if (commit_reflog->flag)
+                               printf("%s", show_rfc2822_date(info->timestamp,
+                                                              info->tz));
+                       else
+                               printf("%d", commit_reflog->reflogs->nr
+                                      - 2 - commit_reflog->recno);
+                       printf("} (%s)\nReflog message: %s",
+                              info->email, info->message);
+               }
        }
 }