Web lists-archives.com

[PATCH v4 00/11] new git check-ignore sub-command




This is the v4 re-roll of the check-ignore series, which is based on
Junio's as/dir-c-cleanup topic branch f6198812 (dir.c: rename
free_excludes() to clear_exclude_list(), 2012-12-27).  As previously
discussed, the earlier parts of the v3 series seem to be complete and
are progressing to 'next'.

Since v3, I addressed the issue of newly public functions with
unacceptably vague or generic names via the following steps:

  - eliminated extraction from add.c to pathspec.c of two functions
    which did not need to be public (validate_pathspec() and
    treat_gitlinks())

  - edited the series history to create separate commits for
    extraction of reusable code from treat_gitlinks() and
    validate_pathspec() into more carefully named public functions

This should make reviewing easier.

I will summarise the changes in the revised patches since v3 in
between the "---" divider and the diffstat of each individual patch.

This series is also available via the check-ignore-v4 tag in:

    git://github.com/aspiers/git.git

Adam Spiers (11):
  dir.c: use a single struct exclude_list per source of excludes
  dir.c: keep track of where patterns came from
  dir.c: provide clear_directory() for reclaiming dir_struct memory
  dir.c: improve docs for match_pathspec() and match_pathspec_depth()
  add.c: remove unused argument from validate_pathspec()
  add.c: move pathspec matchers into new pathspec.c for reuse
  pathspec.c: rename newly public functions for clarity
  add.c: extract check_path_for_gitlink() from treat_gitlinks() for
    reuse
  add.c: extract new die_if_path_beyond_symlink() for reuse
  setup.c: document get_pathspec()
  add git-check-ignore sub-command

 .gitignore                                        |   1 +
 Documentation/git-check-ignore.txt                |  89 +++
 Documentation/gitignore.txt                       |   6 +-
 Documentation/technical/api-directory-listing.txt |  14 +-
 Makefile                                          |   3 +
 builtin.h                                         |   1 +
 builtin/add.c                                     |  78 +--
 builtin/check-ignore.c                            | 173 ++++++
 builtin/clean.c                                   |   3 +-
 builtin/ls-files.c                                |   9 +-
 command-list.txt                                  |   1 +
 contrib/completion/git-completion.bash            |   1 +
 dir.c                                             | 152 ++++--
 dir.h                                             |  62 ++-
 git.c                                             |   1 +
 pathspec.c                                        | 101 ++++
 pathspec.h                                        |   9 +
 setup.c                                           |  19 +
 t/t0008-ignores.sh                                | 632 ++++++++++++++++++++++
 unpack-trees.c                                    |   2 +-
 20 files changed, 1240 insertions(+), 117 deletions(-)
 create mode 100644 Documentation/git-check-ignore.txt
 create mode 100644 builtin/check-ignore.c
 create mode 100644 pathspec.c
 create mode 100644 pathspec.h
 create mode 100755 t/t0008-ignores.sh

-- 
1.7.11.7.33.gb8feba5

--
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