如何确保.gitignore适用于同一存储库中的多个Android项目

时间:2019-04-25 05:58:19

标签: android git android-studio github gitignore

我的问题类似于this post中概述的问题,但是解决方案没有帮助。我基本上有一个Github存储库,其中包含一堆不同的文件夹/目录,每个文件夹/目录都包含一个单独的Android项目。

一个这样的项目的结构看起来像MyTeamRepo-> MyAndroidProject-> app

通常,如果它只是一个Android项目,则将.gitignore放在/ gradle目录中是可以的,但在我的情况下却无法解决问题。

这是我的.gitignore中当前的内容:

# Built application files
*.apk
*.ap_
*.aab

# Files for the ART/Dalvik VM
*.dex

# Java class files
*.class

# Generated files
bin/
gen/
out/

# Gradle files
.gradle/
build/

# Local configuration file (sdk path, etc)
local.properties

# Proguard folder generated by Eclipse
proguard/

# Log Files
*.log

# Android Studio Navigation editor temp files
.navigation/

# Android Studio captures folder
captures/

# IntelliJ
*.iml
.idea/workspace.xml
.idea/misc.xml
.idea/tasks.xml
.idea/gradle.xml
.idea/assetWizardSettings.xml
.idea/dictionaries
.idea/libraries
.idea/caches


# Android Studio 3 in .gitignore file.
.idea/caches/build_file_checksums.ser
.idea/modules.xml

# Keystore files
# Uncomment the following lines if you do not want to check your keystore files in.
#*.jks
#*.keystore

# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# Google Services (e.g. APIs or Firebase)
google-services.json

# Freeline
freeline.py
freeline/
freeline_project_description.json
# fastlane
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
fastlane/readme.md

# Version control
vcs.xml

# lint
lint/intermediates/
lint/generated/
lint/outputs/
lint/tmp/
lint/reports/

我的问题是,每当我对Android项目进行任何更改时,这些.idea和.gradle文件仍会在子文件夹中的任何地方不断弹出,从而在我尝试从Github中提取更改时引起各种合并冲突。 / p>

我还认为部分问题是.idea以前已提交给Github,现在我一直在跟踪它。

我需要采取什么步骤来完全清理我的存储库并确保.gitignore正常工作?

1 个答案:

答案 0 :(得分:0)

如果您想忽略树中任何位置的文件,请使用

**/.idea/modules.xml

无论.idea目录在哪里,modules.xml文件都将被忽略。