Archivo .gitignore típico para una aplicación de Android


116

Simplemente coloque un proyecto de Android en git ( control de versión de beanstalk ) a través de la línea de comando ( terminal mac ). El siguiente paso es configurar exclusiones.

Para aquellos de ustedes que ya han recorrido este camino:

¿Cómo debería ser un archivo .gitignore típico para un proyecto de Android?

Proyecto configurado en Eclipse

Respuestas:


178

Puede mezclar Android.gitignore :

# built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated files
bin/
gen/

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

con Eclipse.gitignore :

*.pydevproject
.project
.metadata
bin/**
tmp/**
tmp/**/*
*.tmp
*.bak
*.swp
*~.nib
local.properties
.classpath
.settings/
.loadpath

# External tool builders
.externalToolBuilders/

# Locally stored "Eclipse launch configurations"
*.launch

# CDT-specific
.cproject

# PDT-specific
.buildpath

2
No conocía el repositorio gitignore de github, eso es realmente una pista útil, gracias.
anddam

14
¿ Realmente quieres ignorar .classpath? Eso parece algo bastante importante para tener en su repositorio de git.
Chris Knight

Curiosamente, parece que se ha modificado desde tu comentario, Chris. ¡Gracias por el aviso! El archivo actualizado está en el enlace que publicó.
Sector95

3
Además de .classpath, el otro archivo que no desea ignorar es .project.
0xF

16

Además de lo que han sugerido los demás, me gustaría agregar la proguardcarpeta, en caso de que la esté utilizando. Puede ignorar toda la carpeta o simplemente dump.txt, seeds.txty usage.txt. Básicamente, es una buena idea mantener las mapping.txtversiones, para que pueda depurar los rastros de pila ofuscados de sus usuarios. Más detalles aquí .


5

Este es mi archivo .gitignorey Android estándar .hgignore. Suele funcionar bastante bien.

bin
gen
target
.settings
.classpath
.project
*.keystore
*.swp
*.orig
*.log
*.properties
seed.txt
map.txt

Tiene archivos eclipse, vim .swp, carpeta de destino mavens y archivos para mapeo proguard incluidos.

Actualización: he puesto mi .gitignore para el desarrollo de Android en línea .


¿Por qué está ahí el archivo de almacén de claves?
shinzou

Para no cometerlo, en caso de que esté en esa carpeta.
keyboardsurfer

1
¿Si, pero por qué? ``
Shinzou

4

Bueno, sé que el repositorio github / gitignore en GitHub tiene un .gitignore de Android archivo . Esto podría ser lo que desea, ya que debería ser muy general para el desarrollo de Android.

El contenido real del archivo mencionado:

# built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated files
bin/
gen/

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

2

Aquí está el que uso en mis proyectos de Android, es compatible con ADT y Android Studio, por lo que es bueno si está trabajando con un equipo.

# General Folders

# gradle/ comment this when using gradle wrapper.
build/
bin/
gen/
tmp/
# proguard/ comment if not using proguard.
.gradle/
.settings/
.idea/

# General Files

.project
.classpath
.DS_Store
local.properties
*.iml
# gradlew comment when using gradle wrapper
# gradlew.bat comment when using gradle wrapper
Thumbs.db


# files specific to current project
your_apk.apk

1

Simplemente github puede generar .gitignorerepositorios para proyectos de Android

ingrese la descripción de la imagen aquí

Y su contenido será como el siguiente

# Built application files
*.apk
*.ap_

# 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/tasks.xml
.idea/gradle.xml
.idea/assetWizardSettings.xml
.idea/dictionaries
.idea/libraries
.idea/caches

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

# 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


0

Además, si usa IntelliJ de IDEA y construye Artefactos (y debería hacerlo), es posible que desee agregar:

out/

(ahí es donde se construyen los artefactos por defecto).

Y si no desea compartir su proyecto IntelliJ, ignore

.idea/
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.