diff-tree --always flag
authorLinus Torvalds <torvalds@osdl.org>
Sun, 5 Feb 2006 19:42:09 +0000 (11:42 -0800)
committerJunio C Hamano <junkio@cox.net>
Sun, 5 Feb 2006 21:46:19 +0000 (13:46 -0800)
It _might_ make sense for certain users like gitk and gitview if
we had a single tool that gives --pretty and its diff even if
the diff is empty.  Having said that, the flag --cc -m is too
specific.  If some uses want to see the commit log even for an
empty diff, that flag should not be something only --cc honors.

Here's an "--always" flag that does that.

Signed-off-by: Junio C Hamano <junkio@cox.net>
diff-tree.c

index 6593a69..2df23c6 100644 (file)
@@ -10,6 +10,7 @@ static int show_empty_combined = 0;
 static int combine_merges = 0;
 static int dense_combined_merges = 0;
 static int read_stdin = 0;
+static int always_show_header = 0;
 
 static const char *header = NULL;
 static const char *header_prefix = "";
@@ -93,6 +94,10 @@ static const char *generate_header(const unsigned char *commit_sha1,
        offset += pretty_print_commit(commit_format, commit, len,
                                      this_header + offset,
                                      sizeof(this_header) - offset, abbrev);
+       if (always_show_header) {
+               puts(this_header);
+               return NULL;
+       }
        return this_header;
 }
 
@@ -262,6 +267,10 @@ int main(int argc, const char **argv)
                        no_commit_id = 1;
                        continue;
                }
+               if (!strcmp(arg, "--always")) {
+                       always_show_header = 1;
+                       continue;
+               }
                usage(diff_tree_usage);
        }
        if (diff_options.output_format == DIFF_FORMAT_PATCH)