diff --no-index: clarify operation when not inside a repository

Clarify documentation for "diff --no-index".  State that when not
inside a repository, --no-index is implied and two arguments are
mandatory.

Clarify error message from diff-no-index to inform user that CWD is
not inside a repository and thus two arguments are mandatory.

Signed-off-by: Dale Worley <worley@ariadne.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Dale R. Worley
2013-08-22 16:31:21 -04:00
committed by Junio C Hamano
parent a3bc3d070c
commit b214eddfb2
2 changed files with 15 additions and 2 deletions

View File

@ -31,7 +31,8 @@ two blob objects, or changes between two files on disk.
+ +
If exactly two paths are given and at least one points outside If exactly two paths are given and at least one points outside
the current repository, 'git diff' will compare the two files / the current repository, 'git diff' will compare the two files /
directories. This behavior can be forced by --no-index. directories. This behavior can be forced by --no-index or by
executing 'git diff' outside of a working tree.
'git diff' [--options] --cached [<commit>] [--] [<path>...]:: 'git diff' [--options] --cached [<commit>] [--] [<path>...]::

View File

@ -215,9 +215,21 @@ void diff_no_index(struct rev_info *revs,
path_inside_repo(prefix, argv[i+1]))) path_inside_repo(prefix, argv[i+1])))
return; return;
} }
if (argc != i + 2) if (argc != i + 2) {
if (!no_index) {
/*
* There was no --no-index and there were not two
* paths. It is possible that the user intended
* to do an inside-repository operation.
*/
fprintf(stderr, "Not a git repository\n");
fprintf(stderr,
"To compare two paths outside a working tree:\n");
}
/* Give the usage message for non-repository usage and exit. */
usagef("git diff %s <path> <path>", usagef("git diff %s <path> <path>",
no_index ? "--no-index" : "[--no-index]"); no_index ? "--no-index" : "[--no-index]");
}
diff_setup(&revs->diffopt); diff_setup(&revs->diffopt);
for (i = 1; i < argc - 2; ) { for (i = 1; i < argc - 2; ) {