X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=diff-lib.c;h=1c7e652a8048524e73f2f34833647d7ec1610bc9;hb=a0db3e5878fd5fa3f54bcf7042ad3d0cb30e07f2;hp=349f612b615fc152e9d272900b1ac5177f4a025c;hpb=3259ada4c79eb1e8213ab44c7ce3ec6f7775cd33;p=git.git diff --git a/diff-lib.c b/diff-lib.c index 349f612b6..1c7e652a8 100644 --- a/diff-lib.c +++ b/diff-lib.c @@ -159,7 +159,7 @@ int run_diff_files(struct rev_info *revs, unsigned int option) continue; } - if (ce_uptodate(ce)) + if (ce_uptodate(ce) || ce_skip_worktree(ce)) continue; /* If CE_VALID is set, don't look at workdir for file removal */ @@ -323,7 +323,8 @@ static void do_oneway_diff(struct unpack_trees_options *o, int match_missing, cached; /* if the entry is not checked out, don't examine work tree */ - cached = o->index_only || (idx && (idx->ce_flags & CE_VALID)); + cached = o->index_only || + (idx && ((idx->ce_flags & CE_VALID) || ce_skip_worktree(idx))); /* * Backward compatibility wart - "diff-index -m" does * not mean "do not ignore merges", but "match_missing".