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>
This commit is contained in:
parent
128de65767
commit
b0320eaf6a
@ -85,7 +85,7 @@ static void print_new_head_line(struct commit *commit)
|
|||||||
printf("\n");
|
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;
|
int result;
|
||||||
|
|
||||||
@ -96,7 +96,8 @@ static int update_index_refresh(int fd, struct lock_file *index_lock)
|
|||||||
|
|
||||||
if (read_cache() < 0)
|
if (read_cache() < 0)
|
||||||
return error("Could not read index");
|
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) ||
|
if (write_cache(fd, active_cache, active_nr) ||
|
||||||
commit_locked_index(index_lock))
|
commit_locked_index(index_lock))
|
||||||
return error ("Could not refresh index");
|
return error ("Could not refresh index");
|
||||||
@ -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,
|
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));
|
struct lock_file *lock = xcalloc(1, sizeof(struct lock_file));
|
||||||
int index_fd, index_was_discarded = 0;
|
int index_fd, index_was_discarded = 0;
|
||||||
@ -152,7 +153,7 @@ static int read_from_tree(const char *prefix, const char **argv,
|
|||||||
if (!index_was_discarded)
|
if (!index_was_discarded)
|
||||||
/* The index is still clobbered from do_diff_cache() */
|
/* The index is still clobbered from do_diff_cache() */
|
||||||
discard_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)
|
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)
|
|||||||
else if (reset_type != NONE)
|
else if (reset_type != NONE)
|
||||||
die("Cannot do %s reset with paths.",
|
die("Cannot do %s reset with paths.",
|
||||||
reset_type_names[reset_type]);
|
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)
|
if (reset_type == NONE)
|
||||||
reset_type = MIXED; /* by default */
|
reset_type = MIXED; /* by default */
|
||||||
@ -286,7 +288,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
|
|||||||
case SOFT: /* Nothing else to do. */
|
case SOFT: /* Nothing else to do. */
|
||||||
break;
|
break;
|
||||||
case MIXED: /* Report what has not been updated. */
|
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;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user