Browse Source

git-reset: Let -q hush "locally modified" messages

"git reset -q" is advertised to "only report errors", but "locally
modified" messages are still shown.  They are not errors but diagnostics.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Stephan Beyer 17 years ago committed by Junio C Hamano
parent
commit
b0320eaf6a
  1. 15
      builtin-reset.c

15
builtin-reset.c

@ -85,7 +85,7 @@ static void print_new_head_line(struct commit *commit) @@ -85,7 +85,7 @@ static void print_new_head_line(struct commit *commit)
printf("\n");
}

static int update_index_refresh(int fd, struct lock_file *index_lock)
static int update_index_refresh(int fd, struct lock_file *index_lock, int flags)
{
int result;

@ -96,7 +96,8 @@ static int update_index_refresh(int fd, struct lock_file *index_lock) @@ -96,7 +96,8 @@ static int update_index_refresh(int fd, struct lock_file *index_lock)

if (read_cache() < 0)
return error("Could not read index");
result = refresh_cache(REFRESH_SAY_CHANGED) ? 1 : 0;

result = refresh_cache(flags) ? 1 : 0;
if (write_cache(fd, active_cache, active_nr) ||
commit_locked_index(index_lock))
return error ("Could not refresh index");
@ -128,7 +129,7 @@ static void update_index_from_diff(struct diff_queue_struct *q, @@ -128,7 +129,7 @@ static void update_index_from_diff(struct diff_queue_struct *q,
}

static int read_from_tree(const char *prefix, const char **argv,
unsigned char *tree_sha1)
unsigned char *tree_sha1, int refresh_flags)
{
struct lock_file *lock = xcalloc(1, sizeof(struct lock_file));
int index_fd, index_was_discarded = 0;
@ -152,7 +153,7 @@ static int read_from_tree(const char *prefix, const char **argv, @@ -152,7 +153,7 @@ static int read_from_tree(const char *prefix, const char **argv,
if (!index_was_discarded)
/* The index is still clobbered from do_diff_cache() */
discard_cache();
return update_index_refresh(index_fd, lock);
return update_index_refresh(index_fd, lock, refresh_flags);
}

static void prepend_reflog_action(const char *action, char *buf, size_t size)
@ -246,7 +247,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix) @@ -246,7 +247,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
else if (reset_type != NONE)
die("Cannot do %s reset with paths.",
reset_type_names[reset_type]);
return read_from_tree(prefix, argv + i, sha1);
return read_from_tree(prefix, argv + i, sha1,
quiet ? REFRESH_QUIET : REFRESH_SAY_CHANGED);
}
if (reset_type == NONE)
reset_type = MIXED; /* by default */
@ -286,7 +288,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix) @@ -286,7 +288,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
case SOFT: /* Nothing else to do. */
break;
case MIXED: /* Report what has not been updated. */
update_index_refresh(0, NULL);
update_index_refresh(0, NULL,
quiet ? REFRESH_QUIET : REFRESH_SAY_CHANGED);
break;
}


Loading…
Cancel
Save