git - .gitignore 的限制深度

标签 git gitignore

由于各种原因,我在项目根目录的 .gitignore 中有条目:

 *.c

如我所愿,这将忽略所有包含的 C 文件。但是,我真的只希望 C 文件只在根目录中被忽略,而不是所有子目录:

 foo.c
 bar.c
 folder/baz.c

在上面的方案中,我只想忽略 foo.c 和 bar.c。我不希望这个 gitignore 规则递归工作。我该怎么做?

我知道可以用 !*.c 否定规则,但我不想对每个子目录都这样做。 (这就是我目前正在做的)。

最佳答案

你想这样做:

/*.c

我正在寻找联机帮助页中的一些内容来引用,然后发现这个确切的例子就在那里!糟糕!

A leading slash matches the beginning of the pathname. For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".

关于git - .gitignore 的限制深度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3551569/

相关文章:

git - TortoiseGit - 慢速显示日志修改查询

git - 文件显示在 git 的每个分支中

git - Gitignore 文件中的正斜杠

git - Xcode 10 Git 如何更新 .gitignore 以忽略与 cocoapods 相关的新项目文件?

Git:仅忽略文件夹的内容

codeblocks - 如何在 gitignore 中添加可执行代码块?

git - 确切的 `svn export` 等同于 git 的命令?

Git blame : View all Lines Authored by Specific User

Git 'pre-receive' 钩子(Hook)和 'git-clang-format' 脚本可靠地拒绝违反代码风格约定的推送

gitignore 文件忽略 cachebusted 文件