Browse Source

[PATCH] Better error message from checkout-cache for unmerged files.

The checkout-cache command says "file is not in the cache" when
an unmerged path is given.  This patch adds code to distinguish
the unmerged and the nonexistent cases and gives an appropriate
error message.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
maint
Junio C Hamano 20 years ago committed by Linus Torvalds
parent
commit
a38800fde2
  1. 11
      checkout-cache.c

11
checkout-cache.c

@ -121,8 +121,15 @@ static int checkout_file(const char *name) @@ -121,8 +121,15 @@ static int checkout_file(const char *name)
{
int pos = cache_name_pos(name, strlen(name));
if (pos < 0) {
if (!quiet)
fprintf(stderr, "checkout-cache: %s is not in the cache\n", name);
if (!quiet) {
pos = -pos - 1;
fprintf(stderr,
"checkout-cache: %s is %s.\n",
name,
(pos < active_nr &&
!strcmp(active_cache[pos]->name, name)) ?
"unmerged" : "not in the cache");
}
return -1;
}
return checkout_entry(active_cache[pos]);

Loading…
Cancel
Save