diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2019-09-03 18:04:57 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-09-05 21:05:12 (GMT) |
commit | 65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4 (patch) | |
tree | bd91b97a0abd9a03d446a8b5dbcc016bcef897c5 /builtin | |
parent | 4ff89ee52cd3cf6e38a11bb94e43df1b53c56eec (diff) | |
download | git-65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4.zip git-65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4.tar.gz git-65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4.tar.bz2 |
treewide: rename 'exclude' methods to 'pattern'
The first consumer of pattern-matching filenames was the
.gitignore feature. In that context, storing a list of patterns
as a 'struct exclude_list' makes sense. However, the
sparse-checkout feature then adopted these structures and methods,
but with the opposite meaning: these patterns match the files
that should be included!
It would be clearer to rename this entire library as a "pattern
matching" library, and the callers apply exclusion/inclusion
logic accordingly based on their needs.
This commit renames several methods defined in dir.h to make
more sense with the renamed 'struct exclude_list' to 'struct
pattern_list' and 'struct exclude' to 'struct path_pattern':
* last_exclude_matching() -> last_matching_pattern()
* parse_exclude() -> parse_path_pattern()
In addition, the word 'exclude' was replaced with 'pattern'
in the methods below:
* add_exclude_list()
* add_excludes_from_file_to_list()
* add_excludes_from_file()
* add_excludes_from_blob_to_list()
* add_exclude()
* clear_exclude_list()
A few methods with the word "exclude" remain. These will
be handled seperately. In particular, the method
"is_excluded()" is concretely about the .gitignore file
relative to a specific directory. This is the important
boundary between library and consumer: is_excluded() cares
about .gitignore, but is_excluded() calls
last_matching_pattern() to make that decision.
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/check-ignore.c | 2 | ||||
-rw-r--r-- | builtin/clean.c | 8 | ||||
-rw-r--r-- | builtin/ls-files.c | 6 |
3 files changed, 8 insertions, 8 deletions
diff --git a/builtin/check-ignore.c b/builtin/check-ignore.c index 28b8f14..5a4f923 100644 --- a/builtin/check-ignore.c +++ b/builtin/check-ignore.c @@ -106,7 +106,7 @@ static int check_ignore(struct dir_struct *dir, pattern = NULL; if (!seen[i]) { int dtype = DT_UNKNOWN; - pattern = last_exclude_matching(dir, &the_index, + pattern = last_matching_pattern(dir, &the_index, full_path, &dtype); } if (!quiet && (pattern || show_non_matching)) diff --git a/builtin/clean.c b/builtin/clean.c index d8c847d..4920c92 100644 --- a/builtin/clean.c +++ b/builtin/clean.c @@ -670,7 +670,7 @@ static int filter_by_patterns_cmd(void) break; memset(&dir, 0, sizeof(dir)); - pl = add_exclude_list(&dir, EXC_CMDL, "manual exclude"); + pl = add_pattern_list(&dir, EXC_CMDL, "manual exclude"); ignore_list = strbuf_split_max(&confirm, ' ', 0); for (i = 0; ignore_list[i]; i++) { @@ -678,7 +678,7 @@ static int filter_by_patterns_cmd(void) if (!ignore_list[i]->len) continue; - add_exclude(ignore_list[i]->buf, "", 0, pl, -(i+1)); + add_pattern(ignore_list[i]->buf, "", 0, pl, -(i+1)); } changed = 0; @@ -957,9 +957,9 @@ int cmd_clean(int argc, const char **argv, const char *prefix) if (!ignored) setup_standard_excludes(&dir); - pl = add_exclude_list(&dir, EXC_CMDL, "--exclude option"); + pl = add_pattern_list(&dir, EXC_CMDL, "--exclude option"); for (i = 0; i < exclude_list.nr; i++) - add_exclude(exclude_list.items[i].string, "", 0, pl, -(i+1)); + add_pattern(exclude_list.items[i].string, "", 0, pl, -(i+1)); parse_pathspec(&pathspec, 0, PATHSPEC_PREFER_CWD, diff --git a/builtin/ls-files.c b/builtin/ls-files.c index df8918a..5acc396 100644 --- a/builtin/ls-files.c +++ b/builtin/ls-files.c @@ -492,7 +492,7 @@ static int option_parse_exclude_from(const struct option *opt, BUG_ON_OPT_NEG(unset); exc_given = 1; - add_excludes_from_file(dir, arg); + add_patterns_from_file(dir, arg); return 0; } @@ -594,9 +594,9 @@ int cmd_ls_files(int argc, const char **argv, const char *cmd_prefix) argc = parse_options(argc, argv, prefix, builtin_ls_files_options, ls_files_usage, 0); - pl = add_exclude_list(&dir, EXC_CMDL, "--exclude option"); + pl = add_pattern_list(&dir, EXC_CMDL, "--exclude option"); for (i = 0; i < exclude_list.nr; i++) { - add_exclude(exclude_list.items[i].string, "", 0, pl, --exclude_args); + add_pattern(exclude_list.items[i].string, "", 0, pl, --exclude_args); } if (show_tag || show_valid_bit || show_fsmonitor_bit) { tag_cached = "H "; |