github/gitignore · Android.gitignore
Android .gitignore 템플릿 해설
Android.gitignore가 Gradle 캐시, 빌드 결과, local.properties, APK·AAB, .idea, 서명 키스토어, google-services.json을 무시하는 이유와 판단 기준을 설명합니다.
Android.gitignore는 Android Studio와 Gradle로 만드는 앱 프로젝트용이다. Gradle 빌드 캐시와 산출물, 개발자 컴퓨터에만 의미 있는 SDK 경로, 앱 서명 키 같은 민감한 파일을 막는다.
IDE 폴더 .idea/를 통째로 무시하는 점이 JetBrains 템플릿과 다르다. 코드 스타일이나 실행 구성을 팀과 공유하려면 이 규칙을 조정해야 한다.
규칙별 해설
| 패턴 | 무엇을, 왜 무시하나 |
|---|---|
.gradle/build/.kotlin/ | Gradle 캐시·빌드Gradle 작업 캐시, 모듈별 빌드 결과, Kotlin 2.0 플러그인 데이터다. 모두 다시 만들어진다. |
local.properties | 로컬 설정Android SDK·NDK 설치 경로(sdk.dir)가 들어 있어 사람마다 값이 다르다. Android Studio가 자동으로 만든다. |
.externalNativeBuild/.cxx/ | 네이티브 빌드CMake·ndk-build로 C/C++ 코드를 빌드할 때 생기는 중간 폴더다. |
*.apk*.aaboutput-metadata.json | 앱 패키지빌드된 APK·App Bundle과 그 메타데이터다. 스토어 업로드나 배포 파이프라인에서 다룬다. |
*.iml.idea/misc.xmldeploymentTargetDropDown.xmlrender.experimental.xml | IDE 파일Android Studio 모듈 파일과 IDE 설정 폴더, 선택한 배포 대상 기기처럼 개인 상태를 담은 파일이다. |
*.jks*.keystore | 서명 키앱 서명에 쓰는 키스토어다. 유출되면 다른 사람이 같은 서명으로 앱을 배포할 수 있으므로 저장소에 넣지 않는다. |
google-services.json | Firebase·Google 서비스 설정Firebase 프로젝트 식별자와 API 키가 들어 있다. 비밀키는 아니지만 공개 저장소라면 제외하는 경우가 많고, 제외하면 CI에서 따로 넣어 주어야 빌드된다. |
captures/*.hprof*.log | 진단 파일프로파일러 캡처와 힙 덤프, 로그다. 용량이 크고 일회성이다. |
실무에서 주의할 점
gradlew,gradlew.bat,gradle/wrapper/는 커밋한다. 이 템플릿은*.jar를 무시하지 않지만 Java 템플릿과 함께 쓴다면 Gradle 템플릿을 뒤에 두어 래퍼 jar를 살린다.- 코드 스타일(
.idea/codeStyles/)을 공유하고 싶다면.idea/대신 JetBrains 템플릿의 세분화된 규칙을 쓴다. google-services.json을 커밋하는 팀이라면 이 줄을 지운다. 어느 쪽이든 서비스 계정 키(JSON)는 커밋하지 않는다.
원본 템플릿
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
템플릿 출처: github/gitignore/Android.gitignore @356fd7b (2026-09-11) · CC0-1.0