github/gitignore · Android.gitignore
Penjelasan template .gitignore Android
Menjelaskan mengapa Android.gitignore mengabaikan cache Gradle, hasil build, local.properties, APK dan AAB, .idea, keystore penandatanganan, dan google-services.json, beserta kriteria keputusannya.
Android.gitignore ditujukan untuk proyek aplikasi yang dibuat dengan Android Studio dan Gradle. Template ini memblokir cache dan hasil build Gradle, path SDK yang hanya bermakna di komputer pengembang, dan file sensitif seperti kunci penandatanganan aplikasi.
Bedanya dengan template JetBrains, folder IDE .idea/ diabaikan seluruhnya. Untuk membagikan gaya kode atau konfigurasi run dengan tim, aturan ini perlu disesuaikan.
Penjelasan per aturan
| Pola | Apa yang diabaikan dan mengapa |
|---|---|
.gradle/build/.kotlin/ | Cache dan build GradleCache tugas Gradle, hasil build per modul, dan data plugin Kotlin 2.0. Semuanya dibuat ulang. |
local.properties | Pengaturan lokalBerisi path instalasi Android SDK dan NDK (sdk.dir) sehingga nilainya berbeda untuk setiap orang. Android Studio membuatnya secara otomatis. |
.externalNativeBuild/.cxx/ | Build nativeFolder perantara yang muncul saat membangun kode C/C++ dengan CMake atau ndk-build. |
*.apk*.aaboutput-metadata.json | Paket aplikasiAPK dan App Bundle hasil build beserta metadatanya. Ditangani dalam unggahan ke store atau pipeline distribusi. |
*.iml.idea/misc.xmldeploymentTargetDropDown.xmlrender.experimental.xml | File IDEFile modul Android Studio, folder pengaturan IDE, dan file berisi status pribadi seperti perangkat target yang dipilih. |
*.jks*.keystore | Kunci penandatangananKeystore yang dipakai untuk menandatangani aplikasi. Jika bocor, orang lain bisa mendistribusikan aplikasi dengan tanda tangan yang sama, jadi jangan dimasukkan ke repositori. |
google-services.json | Pengaturan Firebase dan layanan GoogleBerisi pengenal proyek Firebase dan kunci API. Bukan kunci rahasia, tetapi pada repositori publik sering dikecualikan, dan jika dikecualikan harus disisipkan terpisah di CI agar bisa di-build. |
captures/*.hprof*.log | File diagnostikTangkapan profiler, heap dump, dan log. Ukurannya besar dan sekali pakai. |
Hal yang perlu diperhatikan dalam praktik
- Commit
gradlew,gradlew.bat, dangradle/wrapper/. Template ini tidak mengabaikan*.jar, tetapi jika dipakai bersama template Java, taruh template Gradle di belakang agar jar wrapper tetap terlacak. - Jika ingin membagikan gaya kode (
.idea/codeStyles/), gunakan aturan terperinci dari template JetBrains sebagai ganti.idea/. - Jika tim Anda meng-commit
google-services.json, hapus baris ini. Apa pun pilihannya, kunci akun layanan (JSON) tidak di-commit.
Template asli
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
Sumber template: github/gitignore/Android.gitignore @356fd7b (2026-09-11) · CC0-1.0