git 如何忽略除了指定文件夹名的所有文件

image.png
RT 我想忽略out 文件夹下 除了 libs 文件夹的所有其他文件,
但是 sourceTree 还是显示了 extensions
!image.png
请教大佬们 我的写法有啥问题吗

阅读 5k
2 个回答

先忽略掉 out下所有文件,再取消忽略某个单独的文件

out/**
!out/libs
  1. 你要先在 .gitignore 里写 out
  2. 你不能写了 out 之后,再写 !out/libs,这不会生效。参考gitignore文档关于!的描述。

    It is not possible to re-include a file if a parent directory of that file is excluded.
  3. 如果你要实现类似的效果,可以先在 .gitignore 里写上out忽略整个目录,
    再用命令git add -f out/libsout/libs下的文件添加进git。
    随后git会追踪这些文件的变化。
    需要注意的是,在out/libs下新建的文件不会出现在git status里,你要主动git add -f添加。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题