如何在Flutter中使用.gitignore避免iOS与Android配置互相覆盖?
仅同步Flutter核心代码(lib目录)的Git配置方案
1. 配置.gitignore忽略平台目录
在项目根目录的.gitignore文件里添加以下规则,让Git彻底忽略Android和iOS的专属目录:
# 忽略Flutter平台专属目录 android/ ios/
这样Git只会追踪lib目录和其他你需要同步的通用文件(比如pubspec.yaml),完全不会处理android/ios下的任何变更。
2. 移除已追踪的平台目录(如果之前提交过)
要是你之前已经把android/ios目录提交到Git仓库了,得先把它们从仓库的追踪列表里移除(本地文件会保留,不会删除),执行以下命令:
git rm -r --cached android ios git commit -m "Stop tracking android/ios directories, keep local platform configs" git push
这步必须做,不然.gitignore的规则对已经被追踪的目录不起作用。
3. 跨平台同步的工作流
- Windows端开发Android:本地保留自己的android目录配置,提交代码时只会推送lib的变更,完全不用管iOS目录的事。
- macOS端发布iOS:本地保留自己的ios目录配置,拉取代码时只会拿到lib的最新内容,不会覆盖你本地的iOS配置文件。
额外实用提示
- 把
pubspec.yaml、pubspec.lock这些通用配置文件留在Git里,保证两边的依赖版本一致。 - 如果之后需要共享部分平台配置模板(比如签名配置的示例),可以建个
platform-templates文件夹放这些模板,然后在.gitignore里排除这个文件夹,这样既能共享模板又不会影响本地的实际配置。
内容的提问来源于stack exchange,提问作者Kevin_woob
相关产品推荐
相关产品推荐

