"git diff FILE BRANCH:FILE" erroneously report FILE does not exist in BRANCH
Here is a complete reproducer for the bug:
mkdir foo \
&& cd foo \
&& git init . \
&& >README \
&& git add README \
&& git commit -m "for all" \
&& git checkout -b devel \
&& echo dev > README \
&& git add README \
&& git commit -m "for developers" \
&& git diff devel:README master:README \
&& git diff README master:README
I'd expect the last "git diff" to report the same diffs as the previous one; instead, it errors out with this bogus message:
fatal: Path 'README' exists on disk, but not in 'master'.
Behaviour verified with git version 1.7.7.3 (installed from official Debian packages) and the latest git development version (1.7.9.rc0.69.gbddcef, from master).
Regards, and thanks for your amazing software,
Stefano
Quoted 9 lines · Stefano Lattarini
I'd expect the last "git diff" to report the same diffs as the previous one; instead, it errors out with this bogus message:
fatal: Path 'README' exists on disk, but not in 'master'.
Behaviour verified with git version 1.7.7.3 (installed from official Debian packages) and the latest git development version (1.7.9.rc0.69.gbddcef, from master).
See http://thread.gmane.org/gmane.comp.version-control.git/188355 for earlier discussion. I haven't gotten around to see if I can fix it without upsetting too much code.
cmn
Quoted 1 line · Stefano Lattarini
&& git diff README master:README
http://thread.gmane.org/gmane.comp.version-control.git/188355/focus=188414