忽略同一根目录中的多个文件夹

ignore multiple folders in same root

我在 .git忽略文件

中偶然发现了这条规则
src/ms.net/CrmPackageAll/*.suo[!!-~]*.user[!!-~]bin[!!-~]obj

貌似是忽略的意思

-- files ending with .suo and .user
-- folders bin and obj

但是当我输入 git 状态时,它仍然显示未跟踪文件中的 bin 和 obj 文件夹,什么是 [!!-~]?找不到任何相关文档以及如何在单个规则中忽略 bin 和 obj 文件夹?

我在 gitignore man page 中没有看到这种格式。

如需忽略:

  • .suo.user
  • 结尾的文件
  • 文件夹 binobj

您的 .gitignore 将是:

*.suo
*.user
bin/
obj/

如果 git 状态仍然显示那些 files/folders,则表示它们已被跟踪。
您需要先删除它们:

例如:

git rm --cached -r bin/
git commit -m "remove bin"

然后 git 状态将不再列出那个 bin/ 文件夹。