diff options
author | Junio C Hamano <junkio@cox.net> | 2006-06-17 17:08:36 -0700 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-06-17 17:08:36 -0700 |
commit | fc5201ac9f17abf8b70b248b17595f3f3d35c056 (patch) | |
tree | 59d1b7aa95bddfce3c535e8a3c752ef9298ff632 /revision.c | |
parent | ada5853c98c5c0ad84a990cc6ee7365a14555c0f (diff) | |
parent | cd112cef999c59a7ca2a96c37b197d303a355924 (diff) | |
download | git-fc5201ac9f17abf8b70b248b17595f3f3d35c056.tar.gz |
Merge branch 'js/diff'
Diffstat (limited to 'revision.c')
-rw-r--r-- | revision.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/revision.c b/revision.c index 6a6952cd55..75c648c13c 100644 --- a/revision.c +++ b/revision.c @@ -303,7 +303,7 @@ static void try_to_simplify_commit(struct rev_info *revs, struct commit *commit) parse_commit(p); switch (rev_compare_tree(revs, p->tree, commit->tree)) { case REV_TREE_SAME: - if (p->object.flags & UNINTERESTING) { + if (!revs->simplify_history || (p->object.flags & UNINTERESTING)) { /* Even if a merge with an uninteresting * side branch brought the entire change * we are interested in, we do not want @@ -519,6 +519,7 @@ void init_revisions(struct rev_info *revs) revs->abbrev = DEFAULT_ABBREV; revs->ignore_merges = 1; + revs->simplify_history = 1; revs->pruning.recursive = 1; revs->pruning.add_remove = file_add_remove; revs->pruning.change = file_change; @@ -756,6 +757,10 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch revs->full_diff = 1; continue; } + if (!strcmp(arg, "--full-history")) { + revs->simplify_history = 0; + continue; + } opts = diff_opt_parse(&revs->diffopt, argv+i, argc-i); if (opts > 0) { revs->diff = 1; |