Merge branch 'fg/maint-exclude-bq' into maint
authorJunio C Hamano <gitster@pobox.com>
Wed, 11 Mar 2009 20:53:53 +0000 (13:53 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 11 Mar 2009 20:53:53 +0000 (13:53 -0700)
* fg/maint-exclude-bq:
Support "\" in non-wildcard exclusion entries

dir.c
t/t3001-ls-files-others-exclude.sh
diff --git a/dir.c b/dir.c
index cfd1ea587d9cce825e238ca81ea99b752543dada..2245749b3fe74f793bd1997d2238883abe61fc07 100644 (file)
--- a/dir.c
+++ b/dir.c
@@ -137,7 +137,7 @@ int match_pathspec(const char **pathspec, const char *name, int namelen,
 
 static int no_wildcard(const char *string)
 {
-       return string[strcspn(string, "*?[{")] == '\0';
+       return string[strcspn(string, "*?[{\\")] == '\0';
 }
 
 void add_exclude(const char *string, const char *base,
index 85aef12a113fed8164a085a19ce5c794ab96ff6f..c65bca838881938e2f924cfe62b2c303dbd5b1cd 100755 (executable)
@@ -19,6 +19,9 @@ do
     >$dir/a.$i
   done
 done
+>"#ignore1"
+>"#ignore2"
+>"#hidden"
 
 cat >expect <<EOF
 a.2
@@ -42,6 +45,9 @@ three/a.8
 EOF
 
 echo '.gitignore
+\#ignore1
+\#ignore2*
+\#hid*n
 output
 expect
 .gitignore
@@ -79,9 +85,10 @@ test_expect_success \
        >output &&
      test_cmp expect output'
 
-cat > excludes-file << EOF
+cat > excludes-file <<\EOF
 *.[1-8]
 e*
+\#*
 EOF
 
 git config core.excludesFile excludes-file