git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 00/31] nd/parse-pathspec

From
Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Date
Jan 13, 2013, 12:35 UTC
Message-ID
<1358080539-17436-1-git-send-email-pclouds@gmail.com>

Changes from v2 (it's hard to keep track of after the rebase, so I may be missing something here):

 - rebased on top of recent master, incorporate changes in
   init_pathspec from jk/pathspec-literal and nd/pathspec-wildcard to
   parse_pathspec
 - kill strip_trailing_slash_from_submodules and treat_gitlinks
   (pretty sure it'll cause conflicts with as/check-ignore)
 - kill init_pathspec, match_pathspec, diff_tree_setup_paths and
   diff_tree_release_paths
 
 - check points for future pathspec development

As far as I understand the "pathspec unification", I'd say we are there, with a few exceptions like "mv", external commands.. But those are pretty much isolated.

I'll send another WIP series implementing :(icase) and :(glob), mainly to show (me) how future pathspec feature development looks like after this.

Nguyễn Thái Ngọc Duy (31):
  clean: remove unused variable "seen"
  Add copy_pathspec
  Add parse_pathspec() that converts cmdline args to struct pathspec
  parse_pathspec: save original pathspec for reporting
  Export parse_pathspec() and convert some get_pathspec() calls
  Guard against new pathspec magic in pathspec matching code
  clean: convert to use parse_pathspec
  parse_pathspec: add PATHSPEC_EMPTY_MATCH_ALL
  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
  parse_pathspec: support stripping submodule trailing slashes
  ls-files: convert to use parse_pathspec
  archive: convert to use parse_pathspec
  parse_pathspec: support stripping/checking submodule paths
  add: convert to use parse_pathspec
  Convert read_cache_preload() to take 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
 archive.c              |  18 +++--
 archive.h              |   2 +-
 builtin/add.c          | 155 +++++++++++++++----------------------
 builtin/blame.c        |  12 +--
 builtin/checkout.c     |  44 ++++++-----
 builtin/clean.c        |  21 ++---
 builtin/commit.c       |  37 +++++----
 builtin/diff-files.c   |   2 +-
 builtin/diff-index.c   |   2 +-
 builtin/diff.c         |   6 +-
 builtin/grep.c         |   6 +-
 builtin/log.c          |   2 +-
 builtin/ls-files.c     |  72 +++++++-----------
 builtin/ls-tree.c      |  10 ++-
 builtin/mv.c           |  13 ++--
 builtin/rerere.c       |   6 +-
 builtin/reset.c        |   4 +-
 builtin/rm.c           |  23 +++---
 builtin/update-index.c |   3 +-
 cache.h                |  36 +++++++--
 diff-lib.c             |   2 +-
 diff.h                 |   2 -
 dir.c                  | 202 ++++++++-----------------------------------------
 dir.h                  |   9 ++-
 merge-recursive.c      |   2 +-
 notes-merge.c          |   4 +-
 preload-index.c        |  20 ++---
 read-cache.c           |   5 +-
 rerere.c               |   6 +-
 rerere.h               |   4 +-
 resolve-undo.c         |   4 +-
 resolve-undo.h         |   2 +-
 revision.c             |  11 +--
 setup.c                | 149 ++++++++++++++++++++++++++++++------
 tree-diff.c            |  47 +++++++-----
 tree-walk.c            |   2 +
 tree.c                 |   4 +-
 tree.h                 |   2 +-
 wt-status.c            |  17 ++---
 wt-status.h            |   2 +-
 40 files changed, 460 insertions(+), 510 deletions(-)
-- 
1.8.0.rc2.23.g1fb49df
Next: Nguyễn Thái Ngọc Duy
Message 1 of 37 in “nd/parse-pathspec”
  1. 00/31 nd/parse-pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  2. 01/31 clean: remove unused variable "seen"Nguyễn Thái Ngọc Duy, Jan 13, 2013
  3. 02/31 Add copy_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  4. 03/31 Add parse_pathspec() that converts cmdline args to struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  5. Martin von ZweigbergkJan 14, 2013
  6. Duy NguyenJan 14, 2013
  7. 04/31 parse_pathspec: save original pathspec for reportingNguyễn Thái Ngọc Duy, Jan 13, 2013
  8. 05/31 Export parse_pathspec() and convert some get_pathspec() callsNguyễn Thái Ngọc Duy, Jan 13, 2013
  9. 06/31 Guard against new pathspec magic in pathspec matching codeNguyễn Thái Ngọc Duy, Jan 13, 2013
  10. 07/31 clean: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  11. 08/31 parse_pathspec: add PATHSPEC_EMPTY_MATCH_ALLNguyễn Thái Ngọc Duy, Jan 13, 2013
  12. Martin von ZweigbergkJan 21, 2013
  13. Duy NguyenJan 22, 2013
  14. 09/31 commit: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  15. 10/31 status: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  16. 11/31 rerere: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  17. 12/31 checkout: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  18. 13/31 rm: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  19. 14/31 parse_pathspec: support stripping submodule trailing slashesNguyễn Thái Ngọc Duy, Jan 13, 2013
  20. 15/31 ls-files: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  21. 16/31 archive: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  22. 17/31 parse_pathspec: support stripping/checking submodule pathsNguyễn Thái Ngọc Duy, Jan 13, 2013
  23. 18/31 add: convert to use parse_pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  24. 19/31 Convert read_cache_preload() to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  25. 20/31 Convert unmerge_cache to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  26. 21/31 checkout: convert read_tree_some to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  27. 22/31 Convert report_path_error to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  28. 23/31 Convert refresh_index to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  29. 24/31 Convert {read,fill}_directory to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  30. 25/31 Convert add_files_to_cache to take struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  31. 26/31 Convert common_prefix() to use struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  32. 27/31 Remove diff_tree_{setup,release}_pathsNguyễn Thái Ngọc Duy, Jan 13, 2013
  33. 28/31 Remove init_pathspec() in favor of parse_pathspec()Nguyễn Thái Ngọc Duy, Jan 13, 2013
  34. 29/31 Remove match_pathspec() in favor of match_pathspec_depth()Nguyễn Thái Ngọc Duy, Jan 13, 2013
  35. 30/31 tree-diff: remove the use of pathspec's raw[] in follow-rename codepathNguyễn Thái Ngọc Duy, Jan 13, 2013
  36. 31/31 Rename field "raw" to "_raw" in struct pathspecNguyễn Thái Ngọc Duy, Jan 13, 2013
  37. Junio C HamanoJan 13, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.