github/gitignore · Android.gitignore
Android-.gitignore-Vorlage erklärt
Erklärt, warum Android.gitignore den Gradle-Cache, Build-Ergebnisse, local.properties, APK·AAB, .idea, den Signatur-Keystore und google-services.json ignoriert, und nennt Entscheidungskriterien.
Android.gitignore ist für App-Projekte gedacht, die mit Android Studio und Gradle erstellt werden. Sie blockiert Gradle-Build-Cache und -Artefakte, den SDK-Pfad, der nur auf dem Rechner des Entwicklers Sinn ergibt, und sensible Dateien wie den App-Signaturschlüssel.
Anders als die JetBrains-Vorlage ignoriert sie den IDE-Ordner .idea/ vollständig. Wer Codestil oder Ausführungskonfigurationen mit dem Team teilen möchte, muss diese Regel anpassen.
Regeln im Einzelnen
| Muster | Was ignoriert wird und warum |
|---|---|
.gradle/build/.kotlin/ | Gradle-Cache und -BuildGradle-Task-Cache, Build-Ergebnisse je Modul und Daten des Kotlin-2.0-Plugins. Alles wird neu erzeugt. |
local.properties | Lokale EinstellungenEnthält den Installationspfad von Android SDK und NDK (sdk.dir), dessen Wert je Person verschieden ist. Android Studio legt die Datei automatisch an. |
.externalNativeBuild/.cxx/ | Nativer BuildZwischenordner, die beim Bauen von C/C++-Code mit CMake oder ndk-build entstehen. |
*.apk*.aaboutput-metadata.json | App-PaketeGebaute APKs und App Bundles samt Metadaten. Sie gehören zum Store-Upload oder zur Bereitstellungspipeline. |
*.iml.idea/misc.xmldeploymentTargetDropDown.xmlrender.experimental.xml | IDE-DateienAndroid-Studio-Moduldateien, der IDE-Einstellungsordner und Dateien mit persönlichem Zustand, etwa das ausgewählte Zielgerät für die Bereitstellung. |
*.jks*.keystore | SignaturschlüsselKeystore zum Signieren der App. Gelangt er nach außen, könnten andere Apps mit derselben Signatur verteilen – er gehört daher nicht ins Repository. |
google-services.json | Firebase- und Google-Services-KonfigurationEnthält die Firebase-Projektkennung und einen API-Schlüssel. Er ist nicht geheim, wird in öffentlichen Repositorys aber oft ausgeschlossen; dann muss er in der CI separat bereitgestellt werden, damit der Build gelingt. |
captures/*.hprof*.log | DiagnosedateienProfiler-Aufzeichnungen, Heap-Dumps und Logs. Groß und einmalig. |
Hinweise für die Praxis
- Committen Sie
gradlew,gradlew.batundgradle/wrapper/. Diese Vorlage ignoriert*.jarnicht; nutzen Sie sie aber mit der Java-Vorlage, setzen Sie die Gradle-Vorlage dahinter, um das Wrapper-jar zu erhalten. - Möchten Sie den Codestil (
.idea/codeStyles/) teilen, verwenden Sie statt.idea/die feiner gegliederten Regeln der JetBrains-Vorlage. - Committet Ihr Team
google-services.json, löschen Sie diese Zeile. In jedem Fall wird der Dienstkontoschlüssel (JSON) nicht committet.
Originalvorlage
Android.gitignore
# Gradle files.gradle/build/.kotlin/# Local configuration file (sdk path, etc)local.properties# Log/OS Files*.log# Android Studio generated files and folderscaptures/.externalNativeBuild/.cxx/*.aab*.apkoutput-metadata.json# IntelliJ*.iml.idea/misc.xmldeploymentTargetDropDown.xmlrender.experimental.xml# Keystore files*.jks*.keystore# Google Services (e.g. APIs or Firebase)google-services.json# Android Profiling*.hprof
Vorlagenquelle: github/gitignore/Android.gitignore @356fd7b (2026-09-11) · CC0-1.0