Arquivo .gitignore típico para um aplicativo Android


116

Basta colocar um projeto Android em git ( beanstalk controle de versão ) por meio da linha de comando ( terminal mac ). A próxima etapa é configurar exclusões.

Para aqueles de vocês que já seguiram este caminho:

Qual deve ser a aparência de um arquivo .gitignore típico para um projeto Android?

Projeto configurado no Eclipse

Respostas:


178

Você pode misturar 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

com 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
Eu não conhecia o repositório gitignore do github, essa é realmente uma dica útil, obrigado.
anddam

14
Você realmente deseja ignorar .classpath? Isso parece uma coisa bastante importante para ter em seu repositório git.
Chris Knight

Curiosamente, parece que isso foi alterado desde seu comentário, Chris. Obrigado pelo aviso! O arquivo atualizado está no link que ele postou.
Setor 95 de

3
Além de .classpath, o outro arquivo que você não deseja ignorar é .project.
0xF 01 de

16

Além do que os outros sugeriram, gostaria de adicionar a proguardpasta, caso você esteja usando. Você pode ignorar a pasta inteira ou apenas dump.txt, seeds.txte usage.txt. Basicamente, é uma boa ideia manter a mapping.txtversão, para que você possa depurar rastreamentos de pilha ofuscados de seus usuários. Mais detalhes aqui .


5

Este é o meu Android .gitignoree .hgignorearquivo padrão . Geralmente funciona muito bem.

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

Inclui eclipse, arquivos vim .swp, pasta de destino mavens e arquivos para mapeamento de proguard.

Atualização: coloquei meu .gitignore para desenvolvimento Android online .


Por que o arquivo keystore está lá?
shinzou

Para não fazer commit, caso esteja nessa pasta.
keyboardsurfer

1
Sim mas por quê? ``
shinzou

4

Bem, eu sei que o repositório github / gitignore no GitHub tem um arquivo android .gitignore . Isso pode ser o que você deseja, pois deve ser muito geral para o desenvolvimento do Android.

O conteúdo real do arquivo 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

Aqui está o que eu uso em meus projetos Android, ele suporta ADT e Android Studio, então é bom se você estiver trabalhando em equipe.

# 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

Simplesmente github pode gerar .gitignorepara repositórios de projetos Android

insira a descrição da imagem aqui

E seu conteúdo será como o seguinte

# 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

Além disso, se você usar o IntelliJ do IDEA e construir artefatos (e deveria), você pode querer adicionar:

out/

(é onde os artefatos são construídos por padrão).

E se você não quiser compartilhar suas coisas do projeto IntelliJ, ignore

.idea/
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.