git --diff: fix traceback when getting mode change
- use the manifest instead of the mode in the working dir
if the diff is against two revisions
- add a testcase
adding a
adding b
adding t.h
adding t/x
a
NONEXISTENT: No such file or directory
a
b
t.h
t/x
a: No such file or directory
NONEXISTENT: No such file or directory
b
t.h
t/x
a
NONEXISTENT: No such file in rev ce18e5bc5cd3
a
t/x
b
t.h
% -I/-X with relative path should work
b
t.h
t/x
t/x
t/x