Re: `git mv` has ambiguous error message for non-existing target
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:55:18
Patrick Lehner [off-list ref] writes:
To reproduce: - cd into a git repo - assuming "filea.txt" is an existing file in the CWD, and "dirb" is neither a file nor a directory in the CWD, use the command "git mv filea.txt dirb/filea.txt" - this will produce an error message like `fatal: renaming 'filea.sh' failed: No such file or directory` It does not mention that the problem is, in fact, the target directory not existing. This seems to be mostly a problem for users unfamiliar with bash/*nix console commands. Although it is documented that git mv will not create intermediate folders (which is fine, because neither does mv), the error message might lead to believe a problem exists with the source file.
$ rm -fr xxx
$ >yyy
$ mv yyy xxx/yyy
mv: cannot move `yyy' to `xxx/yyy': No such file or directory
It doesn't mention that the problem is with 'xxx' and not 'yyy'
either.