summaryrefslogtreecommitdiff
path: root/diff-no-index.c
diff options
context:
space:
mode:
authorDale R. Worley <worley@alum.mit.edu>2013-08-22 16:31:21 -0400
committerJunio C Hamano <gitster@pobox.com>2013-08-22 13:55:28 -0700
commitb214eddfb2d57e318a3f5b88da1cafcf19184b4d (patch)
tree35115dffbe71f776bcd0ff904309a09f90c10937 /diff-no-index.c
parenta3bc3d070cacf07dbe11b4bfec57554c8bbf1957 (diff)
downloadgit-b214eddfb2d57e318a3f5b88da1cafcf19184b4d.tar.gz
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>
Diffstat (limited to 'diff-no-index.c')
-rw-r--r--diff-no-index.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/diff-no-index.c b/diff-no-index.c
index 74da659368..014d20a2bd 100644
--- a/diff-no-index.c
+++ b/diff-no-index.c
@@ -215,9 +215,21 @@ void diff_no_index(struct rev_info *revs,
path_inside_repo(prefix, argv[i+1])))
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>",
no_index ? "--no-index" : "[--no-index]");
+ }
diff_setup(&revs->diffopt);
for (i = 1; i < argc - 2; ) {