多模块项目中如何忽略Git里的/build和/generated文件夹文件?
修正.gitignore规则以忽略modules和features下的所有build目录
你的项目结构里,modules和features文件夹下都包含子项目,要确保这些子项目生成的/build目录被Git忽略,当前.gitignore里最后一段规则存在语法错误(Git不支持!file:*build*/这类写法),直接按以下方式修改即可:
修正后的核心规则
保留原有其他有效规则,把最后那段关于modules和features的错误规则替换成:
# 忽略所有目录下的build文件夹(包含modules、features下的子项目) build/ # 若仅需忽略modules和features下的build、保留根目录build,就用下面两行替换上面的build/ # modules/**/build/ # features/**/build/
完整修正后的.gitignore内容
# 忽略vim交换文件 *.swp # 忽略测试文件 TEST-*.xml # 忽略eclipse配置文件 .settings/ .project .classpath # 忽略idea配置文件 *.iml .idea/ # 忽略Mac系统文件 .DS_Store # 忽略各类构建工具输出 bin/ local.properties signing.properties build/ gen/ classes .gradle out/ target captures/ # 可选:仅单独指定忽略modules和features下的build(若需保留根目录build则启用) # modules/**/build/ # features/**/build/
规则说明
build/会匹配所有层级的build文件夹,不管是根目录、modules下的子项目还是features下的子项目,完全满足你的需求。modules/**/build/和features/**/build/是更精准的匹配规则,仅忽略对应文件夹下任意层级的build目录,适合需要保留根目录build的场景。- 之前的
!file:*build*/这类规则属于无效语法,Gitignore只支持简单路径匹配、通配符和例外(!开头),直接删除即可。
内容的提问来源于stack exchange,提问作者MaaAn13
相关产品推荐
相关产品推荐

