Git 过滤文件设置方法

Git 过滤文件设置方法 Android Studio Git Commit 过滤 build 目录完整方案一、核心原理Git 过滤文件靠项目根目录的.gitignore配置后Commit 提交窗口不会再出现 build 下任何文件AS 内置的 Ignored Files 仅本地IDE隐藏不生效于Git提交优先用.gitignore。方法1标准 .gitignore 配置推荐全项目生效1. 打开项目根目录.gitignore文件粘贴以下规则自动忽略所有模块的 build 文件夹多模块项目通用# 全局匹配所有子模块下的 build 目录 */build/ # 项目根目录的 buildProject级build build/ # 配套Android常规忽略一并加上 .gradle/ .idea/ *.iml local.properties .externalNativeBuild/ *.log .DS_Store*/build/匹配任意模块app、library、feature下的build/完美适配多模块build/匹配项目根目录的顶层build文件夹2. 关键如果build已经被Git跟踪提交列表还能看到文件之前提交过仅改.gitignore无效需要清除Git缓存打开AS底部Terminal执行# 清除所有已跟踪的build目录本地文件保留gitrm-r--cached*/build/gitrm-r--cachedbuild/# 保存.gitignore并提交这条规则gitadd.gitignoregitcommit-mchore: ignore all build folders执行后重启ASCommit窗口不再出现build文件。方法2Android Studio IDE本地临时忽略仅本机不提交仓库仅隐藏当前电脑的文件换设备/换电脑失效适合临时处理File → Settings → Version Control → Ignored Files右上角点→ 选择Ignore all files under依次选中项目根buildapp模块app/build其他library模块xxx/buildApply → OK》》此方法本地AS没有找到菜单没测试三、验证是否生效打开顶部菜单 Git → Commit左侧变更列表里无任何build目录文件即过滤成功目录树里build文件夹会显示黄色代表已被忽略四、常见踩坑只写build不加斜杠build/会匹配名为build的文件无法忽略文件夹多模块只写app/build/新增library模块后build依然会出现在提交列表必须用*/build/build已经提交到仓库不执行git rm --cached.gitignore不会生效混淆SVN和GitSVN用IDE Ignored FilesGit必须用.gitignore最简完整Android .gitignore模板直接复制# Gradle 构建产物 build/ */build/ .gradle/ .externalNativeBuild/ .cxx/ # IDE配置 .idea/ *.iml *.iws *.ipr # 本地环境配置 local.properties # 打包/日志 *.apk *.aab *.aar *.dex *.log # 系统文件 .DS_Store Thumbs.db亲测配置根目录下.gitignore模板文件是生效的。