Compared to the last round [1] this series mainly fixes comments and commit messages suggested by Eric and Junio. It also fixes a conflict with cb/log-follow-with-combined (in master) and introduces :(icase) mentioned in the last round. [1] http://thread.gmane.org/gmane.comp.version-control.git/226892 Nguyễn Thái Ngọc Duy (46): clean: remove unused variable "seen" Move struct pathspec and related functions to pathspec.[ch] pathspec: i18n-ize error strings in pathspec parsing code pathspec: add copy_pathspec Add parse_pathspec() that converts cmdline args to struct pathspec parse_pathspec: save original pathspec for reporting parse_pathspec: add PATHSPEC_PREFER_{CWD,FULL} Convert some get_pathspec() calls to parse_pathspec() parse_pathspec: add special flag for max_depth feature parse_pathspec: support stripping submodule trailing slashes parse_pathspec: support stripping/checking submodule paths parse_pathspec: support prefixing original patterns Guard against new pathspec magic in pathspec matching code clean: convert to use parse_pathspec commit: convert to use parse_pathspec status: convert to use parse_pathspec rerere: convert to use parse_pathspec checkout: convert to use parse_pathspec rm: convert to use parse_pathspec ls-files: convert to use parse_pathspec archive: convert to use parse_pathspec check-ignore: convert to use parse_pathspec add: convert to use parse_pathspec reset: convert to use parse_pathspec line-log: convert to use parse_pathspec Convert read_cache_preload() to take struct pathspec Convert run_add_interactive to use struct pathspec Convert unmerge_cache to take struct pathspec checkout: convert read_tree_some to take struct pathspec Convert report_path_error to take struct pathspec Convert refresh_index to take struct pathspec Convert {read,fill}_directory to take struct pathspec Convert add_files_to_cache to take struct pathspec Convert common_prefix() to use struct pathspec Remove diff_tree_{setup,release}_paths Remove init_pathspec() in favor of parse_pathspec() Remove match_pathspec() in favor of match_pathspec_depth() tree-diff: remove the use of pathspec's raw[] in follow-rename codepath Rename field "raw" to "_raw" in struct pathspec parse_pathspec: make sure the prefix part is wildcard-free parse_pathspec: preserve prefix length via PATHSPEC_PREFIX_ORIGIN Kill limit_pathspec_to_literal() as it's only used by parse_pathspec() pathspec: support :(literal) syntax for noglob pathspec pathspec: make --literal-pathspecs disable pathspec magic pathspec: support :(glob) syntax parse_pathspec: accept :(icase)path syntax Documentation/git.txt | 31 ++- Documentation/glossary-content.txt | 52 +++- Documentation/technical/api-setup.txt | 38 ++- archive.c | 18 +- archive.h | 4 +- builtin/add.c | 166 ++++++------- builtin/blame.c | 14 +- builtin/check-ignore.c | 35 ++- builtin/checkout.c | 40 +-- builtin/clean.c | 24 +- builtin/commit.c | 37 ++- builtin/diff-files.c | 2 +- builtin/diff-index.c | 2 +- builtin/diff.c | 6 +- builtin/grep.c | 10 +- builtin/log.c | 2 +- builtin/ls-files.c | 75 +++--- builtin/ls-tree.c | 13 +- builtin/mv.c | 13 +- builtin/rerere.c | 8 +- builtin/reset.c | 33 ++- builtin/rm.c | 24 +- builtin/update-index.c | 6 +- cache.h | 35 +-- combine-diff.c | 4 +- commit.h | 2 +- diff-lib.c | 3 +- diff.h | 3 +- dir.c | 319 +++++++++--------------- dir.h | 18 +- git.c | 12 + line-log.c | 2 +- merge-recursive.c | 2 +- notes-merge.c | 4 +- path.c | 15 +- pathspec.c | 449 +++++++++++++++++++++++++++++++--- pathspec.h | 88 ++++++- preload-index.c | 21 +- read-cache.c | 5 +- rerere.c | 7 +- rerere.h | 4 +- resolve-undo.c | 4 +- resolve-undo.h | 2 +- revision.c | 11 +- setup.c | 173 ++----------- t/t0008-ignores.sh | 8 +- t/t6130-pathspec-noglob.sh | 87 +++++++ t/t6131-pathspec-icase.sh (new +x) | 97 ++++++++ tree-diff.c | 48 ++-- tree-walk.c | 78 ++++-- tree.c | 4 +- tree.h | 2 +- wt-status.c | 16 +- wt-status.h | 2 +- 54 files changed, 1385 insertions(+), 793 deletions(-) create mode 100755 t/t6131-pathspec-icase.sh -- 1.8.2.83.gc99314b -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html