我见过类似的问题(1,2和 3) ,但我没有得到一个适当的解决方案从他们。
除了特定的文件类型之外,我需要忽略特定文件夹下的所有文件。该文件夹是根路径的子目录。让我将文件夹命名为 Resources
。因为我不想把事情复杂化,所以让我忽略所有名为 Resources
的文件夹下的文件。
这是最常见的解决方案(在所有重复的问题中)
# Ignore everything
*
# Don't ignore directories, so we can recurse into them
!*/
# Don't ignore .gitignore
!.gitignore
# Now exclude our type
!*.foo
这个解决方案的问题是 它停止跟踪新添加的文件(因为 *
忽略所有文件)。我不想一直排除每个文件类型。我想正常的行为,如果有任何新的文件添加,git status
显示它。
我终于得到了一个解决方案 给你。解决方案是添加另一个 .gitignore
文件在 Resources
文件夹。这正常工作。
我可以用一个忽略文件实现同样的功能吗?我发现在不同的目录中有许多忽略文件有点笨拙。
这就是我想要达到的目标:
# Ignore everything under Resources folder, not elsewhere
Resources
# Don't ignore directories, so we can recurse into them
!*Resources/
# Now exclude our type
!*.foo
但是这样会得到相反的输出,它忽略 *.foo
类型并跟踪其他文件。