git-status: respect core.excludesFile
git-add reads this variable, and honours the contents of that file if that exists. Match this behaviour in git-status, too. Noticed by Evan Carroll on IRC. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:

committed by
Junio C Hamano

parent
243bfd3399
commit
0ba956d331
@ -22,6 +22,7 @@ static const char use_add_rm_msg[] =
|
||||
"use \"git add/rm <file>...\" to update what will be committed";
|
||||
static const char use_add_to_include_msg[] =
|
||||
"use \"git add <file>...\" to include in what will be committed";
|
||||
static const char *excludes_file;
|
||||
|
||||
static int parse_status_slot(const char *var, int offset)
|
||||
{
|
||||
@ -259,6 +260,8 @@ static void wt_status_print_untracked(struct wt_status *s)
|
||||
x = git_path("info/exclude");
|
||||
if (file_exists(x))
|
||||
add_excludes_from_file(&dir, x);
|
||||
if (excludes_file && file_exists(excludes_file))
|
||||
add_excludes_from_file(&dir, excludes_file);
|
||||
|
||||
read_directory(&dir, ".", "", 0);
|
||||
for(i = 0; i < dir.nr; i++) {
|
||||
@ -356,5 +359,11 @@ int git_status_config(const char *k, const char *v)
|
||||
int slot = parse_status_slot(k, 13);
|
||||
color_parse(v, k, wt_status_colors[slot]);
|
||||
}
|
||||
if (!strcmp(k, "core.excludesfile")) {
|
||||
if (!v)
|
||||
die("core.excludesfile without value");
|
||||
excludes_file = xstrdup(v);
|
||||
return 0;
|
||||
}
|
||||
return git_default_config(k, v);
|
||||
}
|
||||
|
Reference in New Issue
Block a user