X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=wt-status.c;h=10ce6eedc7e8adbcc3b12e1987d2e16b532a4e07;hb=acef41c9db33f2261e46e17cca098df3403dd745;hp=a0559905a0b7072f4a4b44ea321c1316cfc84414;hpb=43d151a1b087db22e2f9a754772b469de1194f67;p=git.git diff --git a/wt-status.c b/wt-status.c index a0559905a..10ce6eedc 100644 --- a/wt-status.c +++ b/wt-status.c @@ -22,6 +22,7 @@ static const char use_add_rm_msg[] = "use \"git add/rm ...\" to update what will be committed"; static const char use_add_to_include_msg[] = "use \"git add ...\" to include in what will be committed"; +static const char *excludes_file; static int parse_status_slot(const char *var, int offset) { @@ -197,7 +198,7 @@ static void wt_read_cache(struct wt_status *s) read_cache(); } -void wt_status_print_initial(struct wt_status *s) +static void wt_status_print_initial(struct wt_status *s) { int i; char buf[PATH_MAX]; @@ -226,6 +227,7 @@ static void wt_status_print_updated(struct wt_status *s) rev.diffopt.format_callback = wt_status_print_updated_cb; rev.diffopt.format_callback_data = s; rev.diffopt.detect_rename = 1; + rev.diffopt.rename_limit = 100; wt_read_cache(s); run_diff_index(&rev, 1); } @@ -259,6 +261,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, NULL); for(i = 0; i < dir.nr; i++) { @@ -356,5 +360,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); }