我遇到了Android Studio生成的.iml文件的问题。在Gradle同步时,它们会被重新生成,这意味着即使没有任何更改,我也必须进行提交。我只是想让这些文件无法跟踪。
我尝试过以下的事情。
*.iml
添加到我的项目的.gitignore
文件以及每个模块的.gitignore
。我试过*.iml
和**/*.iml
git rm --cached app/app.iml
出现在分阶段文件列表中时使用它们。即使在这样做并提交之后,它们也会在稍后再次上演。您有正确的步骤,但您需要组织它们
git rm --cached <all_your_iml_files>
从远程存储库中删除所有这些
或者,您可以执行一个简单的命令来删除所有*.iml
文件,如git ls-files | grep "\.iml$" | xargs git rm --cached
git commit -m "msg"
提交更改,之后,您可以将所有*.iml
文件视为未跟踪文件。*.iml
添加到.gitignore文件中,并将其提交到单独的提交或同一个先前的提交中。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文件。