From 6145ee8b361959db04b8cdefc883e4fc2dc27276 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 27 May 2005 15:56:17 -0700 Subject: [PATCH] Move pathspec to the beginning of the diffcore chain. This changes the way how pathspec is used in the three diff-* brothers. Earlier, they tried to grab as much information from the original input and used pathspec to limit the output. This version uses pathspec upfront to narrow the world diffcore operates in, so "git-diff-* some-directory" does not look at things outside the specified subtree when finding rename/copy or running pickaxe. Since diff-tree already takes this view and does not feed anything outside the specified directotires to begin with, this patch does not have to touch that command. Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- diff-cache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'diff-cache.c') diff --git a/diff-cache.c b/diff-cache.c index 0a6720de6c..66e7bdb62e 100644 --- a/diff-cache.c +++ b/diff-cache.c @@ -240,12 +240,12 @@ int main(int argc, const char **argv) die("unable to read tree object %s", tree_name); ret = diff_cache(active_cache, active_nr); + if (pathspec) + diffcore_pathspec(pathspec); if (detect_rename) diffcore_rename(detect_rename, diff_score_opt); if (pickaxe) diffcore_pickaxe(pickaxe, pickaxe_opts); - if (pathspec) - diffcore_pathspec(pathspec); diff_flush(diff_output_format, 1); return ret; } -- cgit v1.3