从GIT中删除.iml文件

问题描述 投票:15回答:2

我遇到了Android Studio生成的.iml文件的问题。在Gradle同步时,它们会被重新生成,这意味着即使没有任何更改,我也必须进行提交。我只是想让这些文件无法跟踪。

我尝试过以下的事情。

  • *.iml添加到我的项目的.gitignore文件以及每个模块的.gitignore。我试过*.iml**/*.iml
  • git rm --cached app/app.iml出现在分阶段文件列表中时使用它们。即使在这样做并提交之后,它们也会在稍后再次上演。
  • 正如建议的here我在版本控制下将它添加到设置中的忽略文件
android git android-studio intellij-idea
2个回答
24
投票

您有正确的步骤,但您需要组织它们

  1. git rm --cached <all_your_iml_files>从远程存储库中删除所有这些 或者,您可以执行一个简单的命令来删除所有*.iml文件,如git ls-files | grep "\.iml$" | xargs git rm --cached
  2. 使用git commit -m "msg"提交更改,之后,您可以将所有*.iml文件视为未跟踪文件。
  3. *.iml添加到.gitignore文件中,并将其提交到单独的提交或同一个先前的提交中。

0
投票

cd进入项目目录,git checkout和pull master分支

cd /home/your_user/project_directory
git checkout master
git pull origin master

编辑.gitignore文件以插入**/*.iml

git rm --cached **/*.iml
git commit -a -m "rm all *.iml, update .gitignore"
git push origin master

我正在使用Idea IDE开发另一个maven和Java git项目,它似乎在许多子目录中添加了* .iml。

glob语法**/*.iml将覆盖当前工作目录中所有目录中的所有iml文件。

© www.soinside.com 2019 - 2024. All rights reserved.