Subject: [PATCH 0/5] Support matching "**" in .gitattributes and .gitignore

From: Nguyễn Thái Ngọc Duy <[email-masked]>
Date: Sat, 15 Sep 2012 19:01:59 +0700

A while back I posted a proof of concept using wildmatch() from rsync.
Back then the obstacle was case-insensitive matching support. I did not
realize that there was iwildmatch() that does exactly that.

So here again a series that is probably ready for consumption. Now
patterns that contain slashes will always go through (i)wildmatch().
fnmatch() is only used for basename matching.

Nguyễn Thái Ngọc Duy (5):
  Import wildmatch from rsync
  compat/wildmatch: remove static variable force_lower_case
  compat/wildmatch: fix case-insensitive matching
  Integrate wildmatch to git
  Support "**" in .gitignore and .gitattributes patterns using
    wildmatch()

 Documentation/gitignore.txt    |   3 +
 Makefile                       |   6 +
 attr.c                         |   4 +-
 compat/wildmatch.c             | 373 +++++++++++++++++++++++++++++++++++++++++
 compat/wildmatch.h             |   6 +
 dir.c                          |   5 +-
 t/t3070-wildmatch.sh           |  27 +++
 t/t3070-wildmatch/wildtest.txt | 165 ++++++++++++++++++
 test-wildmatch.c               | 228 +++++++++++++++++++++++++
 9 files changed, 815 insertions(+), 2 deletions(-)
 create mode 100644 compat/wildmatch.c
 create mode 100644 compat/wildmatch.h
 create mode 100755 t/t3070-wildmatch.sh
 create mode 100644 t/t3070-wildmatch/wildtest.txt
 create mode 100644 test-wildmatch.c

-- 
1.7.12.403.gce5cf6f.dirty