git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH 0/5] New get_pathspec()
@ 2011-04-09 16:54 Nguyễn Thái Ngọc Duy
  2011-04-09 16:54 ` [PATCH 1/5] Rename functions in preparation for get_pathspec() restructure Nguyễn Thái Ngọc Duy
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Nguyễn Thái Ngọc Duy @ 2011-04-09 16:54 UTC (permalink / raw)
  To: git, Junio C Hamano, Michael J Gruber
  Cc: Nguyễn Thái Ngọc Duy

This is on top of jc/magic-pathspec. It implements new get_pathspec().
Remaining work includes

 - implement verify_pathspec() (see notes on 5/5)

 - make use of pathspec_item.plain_len introduced in 3/5

 - convert the rest to use new get_pathspec(). Can we make it a GSoC
   project?

 - get rid of old pathspec code.

 - implement a whole lot more of pathspec magic.

I think that's it. We also need to think if we can use similar syntax
for gitattr/gitignore, reuse as much code as possible.


[PATCH 1/5] Rename functions in preparation for get_pathspec() restructure

  I figure I cannot bring all commands to the new get_pathspec() at
  once and remove the old one. So instead I rename the old one so that
  we can have both implementations running in parallel.


[PATCH 2/5] Replace has_wildcard with PATHSPEC_NOGLOB

  This effectively kills Junio's use_wildcard rename patch.


[PATCH 3/5] Convert prefix_pathspec() to produce struct pathspec_item

  Also put plain_len field in place for literal matching on prefix.
  Nobody uses it yet though.


[PATCH 4/5] Implement new get_pathspec()

  I don't move prefix_pathspec() to dir.c yet. It may need some
  updates until things are stablized. It will be moved at latest when
  get_pathspec_old() is retired.


[PATCH 5/5] grep: convert to use the new get_pathspec()

  The first user of the new get_pathspec(), just to make sure I don't
  introduce too many bugs.
  The verify_filename() issue remains. I suggest we keep an
  incarnation of it to catch simple pathspecs, then implement
  verify_pathspec() for wildcard pathspecs.

 archive.c              |    2 +-
 builtin/add.c          |    6 ++--
 builtin/checkout.c     |    8 ++--
 builtin/clean.c        |    4 +-
 builtin/commit.c       |    6 ++--
 builtin/grep.c         |   14 ++------
 builtin/ls-files.c     |    8 ++--
 builtin/ls-tree.c      |    2 +-
 builtin/mv.c           |    2 +-
 builtin/rerere.c       |    2 +-
 builtin/reset.c        |    4 +-
 builtin/rm.c           |    4 +-
 builtin/update-index.c |    2 +-
 cache.h                |   26 +++++++++++++--
 dir.c                  |   81 +++++++++++++++++++++++++++++++++++------------
 dir.h                  |    4 +-
 read-cache.c           |    4 +-
 rerere.c               |    2 +-
 resolve-undo.c         |    2 +-
 revision.c             |    2 +-
 setup.c                |   45 +++++++++++---------------
 tree-walk.c            |   25 +++++++--------
 wt-status.c            |    4 +-
 23 files changed, 151 insertions(+), 108 deletions(-)

-- 
1.7.4.74.g639db

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2011-04-10  7:27 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-09 16:54 [PATCH 0/5] New get_pathspec() Nguyễn Thái Ngọc Duy
2011-04-09 16:54 ` [PATCH 1/5] Rename functions in preparation for get_pathspec() restructure Nguyễn Thái Ngọc Duy
2011-04-09 16:54 ` [PATCH 2/5] Replace has_wildcard with PATHSPEC_NOGLOB Nguyễn Thái Ngọc Duy
2011-04-10  0:49   ` Junio C Hamano
2011-04-10  7:23     ` Nguyen Thai Ngoc Duy
2011-04-09 16:54 ` [PATCH 3/5] Convert prefix_pathspec() to produce struct pathspec_item Nguyễn Thái Ngọc Duy
2011-04-09 16:54 ` [PATCH 4/5] Implement new get_pathspec() Nguyễn Thái Ngọc Duy
2011-04-09 16:54 ` [PATCH 5/5] grep: convert to use the " Nguyễn Thái Ngọc Duy
2011-04-10  0:56   ` Junio C Hamano
2011-04-10  7:26     ` Nguyen Thai Ngoc Duy
2011-04-09 21:41 ` [PATCH 0/5] New get_pathspec() Junio C Hamano

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).