递归忽略Git中的文件夹

7
如何忽略所有名称为buildbin的文件夹。我尝试过这样做。
**/bin/
**/build/

但它无法工作。在git状态中,我看到:
#   new file:   BS/server/build/obj/sender.o
#   new file:   BS/server/build/obj/sendistate.o
#   new file:   BS/server/build/obj/serializedata.o
#   new file:   BS/client/bin/gc.sample.xml
#   new file:   BS/client/bin/mkab.qss
#   new file:   BS/client/bin/mkaberr.qss
#   new file:   BS/client/build/debug/application.qss
#   new file:   BS/client/build/debug/config.xml

*/build/* 应该更好。 - Rémi Benoit
可能是重复的问题.gitignore - 忽略任何“bin”目录 - devnull
Rémi Benoit不起作用。我可以做*/*/buid/*,但我需要递归地做这个。 - k_zaur_k
2个回答

6
如果你想忽略目录,应该输入 "directoryname/"。 例如:
bin/
build/

0
  • 使用空的.gitignore进行测试示例:

➜  /tmp  mkdir -p test/ab/{bin,build}  
➜  /tmp  touch test/ab/{bin,build}/file.txt
➜  /tmp  tree -a
➜  /tmp  tree -a test 
test
└── ab
    ├── bin
    │   └── file.txt
    └── build
        └── file.txt

3 directories, 2 files
➜  /tmp  cd testtest  git init
Initialized empty Git repository in /tmp/test/.git/
➜  test git:(master) ✗ git add -An
add 'ab/bin/file.txt'
add 'ab/build/file.txt'
  • 使用填充的测试示例.gitignore

➜  ~  cd /tmp 
➜  /tmp  mkdir -p test/ab/{bin/,build}
➜  /tmp  touch test/ab/{bin,build}/file.txt
➜  /tmp  cat > test/.gitignore
bin
build
➜  /tmp  tree -a test 
test
├── ab
│   ├── bin
│   │   └── file.txt
│   └── build
│       └── file.txt
└── .gitignore

3 directories, 3 files
➜  /tmp  cd testtest  git init
Initialized empty Git repository in /tmp/test/.git/
➜  test git:(master) ✗ git add -An
add '.gitignore'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接