agignore不尊重嵌套的forlder

时间:2017-07-12 20:19:39

标签: emacs ag

我的目录结构是这样的:

roo
   |
   node_modules
         |
         packages
         |
           project1
                  |
                  lib
                  node_modules
           project2
                  | 
                   build
                   node_modules

我想排除libbuildnode_modules,无论它们在目录结构中的位置。

这是我的.gitignore

# dependencies
node_modules
/node_modules/

# testing
/coverage

# production
/build
/lib

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
.tern-port

packages/*/lib/*
packages/*/dist/*

npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log

packages/*/node_modules
packages/*/lib
packages/*/build

1 个答案:

答案 0 :(得分:1)

两个选项:

  1. 使用.ignore文件,并添加以下内容以跳过lib和node_moduels(例如):

    *node_modules/ *lib/

  2. 使用命令行选项忽略目录“--ignore-dir”。例如,如果要忽略node_modules和lib,则使用以下命令:

    ag --ignore-dir lib --ignore-dir node_modules value

  3. 注意:我使用您的确切目录结构对此进行了测试。