On Mon, 3 Nov 2008, Linus Torvalds wrote: > > Side note: it's certainly possible that we could improve on this. Right > now, "--simplify-namespace" will totally override any path simplification, > so you can't get a combination of pathnames _and_ naming commits. I don't > know exactly what the rules should be, but I could imagine that we could > do something like: > > - if no pathnames are given, work the way the current patch-series works. > > - if path-names are given, make rev_compare_tree() truen > REV_TREE_DIFFERENT if a name decoration _or_ a tree difference exists. The incremental diff to do this would be something like the appended. Linus --- revision.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/revision.c b/revision.c index b48e626..1b716c7 100644 --- a/revision.c +++ b/revision.c @@ -311,7 +311,10 @@ static int rev_compare_tree(struct rev_info *revs, struct commit *parent, struct if (revs->simplify_namespace) { struct name_decoration *name; name = lookup_decoration(&name_decoration, &commit->object); - return name ? REV_TREE_DIFFERENT : REV_TREE_SAME; + if (name) + return REV_TREE_DIFFERENT; + if (!revs->prune_data) + return REV_TREE_SAME; } if (!t2) return REV_TREE_DIFFERENT; -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html