[RFC/PATCH] ls-files: fix pathspec display on error
- From
Michael J Gruber <git@drmicha.warpmail.net>
- Date
- Jul 27, 2011, 11:56 UTC
- Message-ID
- <b535c21e1becdf8aeeb1d3f8ddaa7f5415830844.1311767679.git.git@drmicha.warpmail.net>
- In-Reply-To
- <CAEBDL5XJbYT9yczZiVPpeA3mpROuKQdw+-AOJjUmRp4W6M5uzg@mail.gmail.com>
Trying to commit or ls a file "../$a" from within a subdirectory "aha" gives the following output, when "$a" runs through the values "a", "aa" etc.:
error: pathspec '../a' did not match any file(s) known to git. error: pathspec '../aa' did not match any file(s) known to git. error: pathspec '../aaa' did not match any file(s) known to git. error: pathspec '' did not match any file(s) known to git. error: pathspec 'a' did not match any file(s) known to git. error: pathspec 'aa' did not match any file(s) known to git. error: pathspec 'aaa' did not match any file(s) known to git. error: pathspec 'aaaa' did not match any file(s) known to git. error: pathspec 'aaaaa' did not match any file(s) known to git. error: pathspec 'aaaaaa' did not match any file(s) known to git.
This comes from the fact that report_path_error() tries to chop off a prefix from the pathspec which may have been resolved and consumed already.
Fix this by displaying the full pathspec.
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> --- So, I couldn't reproduce because it depends on the length of the dirname. This may be fallout from efad1a5 (ls-files: allow relative pathspec, 2010-06-03) but I haven't checked and won't be able to for the next 3 weeks, sorry. I just wanted to send out this possible fix before I leave. --- builtin/ls-files.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/builtin/ls-files.c b/builtin/ls-files.c index 1570123..e0b1401 100644 --- a/builtin/ls-files.c +++ b/builtin/ls-files.c @@ -418,7 +418,7 @@ int report_path_error(const char *ps_matched, const char **pathspec, int prefix_ continue; error("pathspec '%s' did not match any file(s) known to git.", - pathspec[num] + prefix_len); + pathspec[num]); errors++; } return errors;
-- 1.7.6.336.gdf067