aboutsummaryrefslogtreecommitdiffstats
path: root/diff-cache.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-05-27 15:56:17 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-05-29 11:17:43 -0700
commit6145ee8b361959db04b8cdefc883e4fc2dc27276 (patch)
treebeee0b115472b88e0bcb2fb46ef7df7208485c0d /diff-cache.c
parent15d061b435a7e3b6bead39df3889f4af78c4b00a (diff)
downloadgit-6145ee8b361959db04b8cdefc883e4fc2dc27276.tar.gz
[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-* <arguments> 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 <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'diff-cache.c')
-rw-r--r--diff-cache.c4
1 files changed, 2 insertions, 2 deletions
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;
}