Quais arquivos devem estar no meu .gitignore
para um projeto do Android Studio?
Eu já vi vários exemplos que incluem, .iml
mas os documentos do IntelliJ dizem que isso .iml
deve ser incluído no seu controle de origem.
Quais arquivos devem estar no meu .gitignore
para um projeto do Android Studio?
Eu já vi vários exemplos que incluem, .iml
mas os documentos do IntelliJ dizem que isso .iml
deve ser incluído no seu controle de origem.
Respostas:
Atualizado para o Android Studio 3.0 Compartilhe os itens ausentes nos comentários.
Uma resposta tardia, mas nenhuma das respostas aqui e aqui estava certa para nós ...
Então, aqui está o nosso arquivo 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
# Windows thumbnail db
Thumbs.db
# OSX files
.DS_Store
# Android Studio
*.iml
.idea
#.idea/workspace.xml - remove # and delete .idea if it better suit your needs.
.gradle
build/
.navigation
captures/
output.json
#NDK
obj/
.externalNativeBuild
Desde o Android Studio 2.2 e até 3.0, novos projetos são criados com este arquivo gitignore:
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.externalNativeBuild
Descontinuado - para formato de projeto mais antigo, adicione esta seção ao seu arquivo gitignore:
/*/out
/*/*/build
/*/*/production
*.iws
*.ipr
*~
*.swp
Este arquivo deve estar localizado na pasta raiz do projeto e não dentro da pasta do módulo do projeto.
Editar notas:
Desde a versão 0.3+, parece que você pode confirmar e enviar arquivos * .iml e build.gradle . Se o seu projeto for baseado no Gradle: na nova caixa de diálogo Abrir / Importar, marque a "use auto import"
caixa de seleção e marque o "use default gradle wrapper (recommended)"
botão de opção. Todos os caminhos agora são relativos, como @ George sugeriu.
Resposta atualizada de acordo com a fonte anexada @ 128KB e as sugestões @ Skela
.iml
arquivos, a menos que não queira lidar com aborrecimentos desnecessários se outros usuários nomearem o projeto de maneira diferente quando fizerem o check-out.
Com base no meu .gitignore normal do Android , e depois de ler a documentação no site da Intellij IDEA e ler as postagens no StackOverflow, criei o seguinte arquivo:
# built application files
*.apk
*.ap_
# files for the dex VM
*.dex
# Java class files
*.class
# built native files (uncomment if you build your own)
# *.o
# *.so
# generated files
bin/
gen/
# Ignore gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Eclipse Metadata
.metadata/
# Mac OS X clutter
*.DS_Store
# Windows clutter
Thumbs.db
# Intellij IDEA (see https://intellij-support.jetbrains.com/entries/23393067)
.idea/workspace.xml
.idea/tasks.xml
.idea/datasources.xml
.idea/dataSources.ids
Observe também que, como indicado, a seção de arquivos nativos criados é útil principalmente quando você cria seu próprio código nativo com o NDK do Android. Se, por outro lado, você estiver usando uma biblioteca de terceiros que inclui esses arquivos, remova essas linhas (* .o e * .so) do seu .gitignore.
.idea/libraries
? Eles devem ser compartilhados ou excluídos na sua opinião?
Atualizado 7/2015:
Aqui está a fonte definitiva do JetBrains
Esse formato é usado por todas as versões recentes do IDE por padrão. Aqui está o que você precisa compartilhar:
.idea
diretório na raiz do projeto, exceto os arquivos workspace.xml
e tasks.xml
que armazenam configurações específicas do usuário.iml
arquivos de módulo que podem ser localizados em diferentes diretórios de módulo (aplica-se ao IntelliJ IDEA)Tenha cuidado ao compartilhar o seguinte:
dataSources.ids
, datasources.xml
pode conter senhas do banco de dados. A IDEA 14 resolve esse problema .Você pode considerar não compartilhar o seguinte:
.idea/libraries
em caso de serem gerados a partir do projeto GradleFormato de projeto herdado ( .ipr
/ .iml
/ .iws
files)
.ipr
arquivo do projeto e todos os .iml
arquivos do módulo, não compartilhe o .iws
arquivo, pois ele armazena configurações específicas do usuárioEmbora essas instruções sejam para o IntelliJ IDEA, elas são verdadeiras 100% para o Android Studio.
Aqui está um .gitignore
trecho que incorpora todas as regras acima:
# Android Studio / IntelliJ IDEA
*.iws
.idea/libraries
.idea/tasks.xml
.idea/vcs.xml
.idea/workspace.xml
<orderEntry type="jdk" jdkName="1.6 (38)" jdkType="JavaSDK" />
Observe o número 38 que parece estar sendo incrementado constantemente. (o arquivo misc.xml também tem esse problema).
Eu discordo de todas essas respostas. A configuração a seguir está funcionando muito bem para o aplicativo da nossa organização.
Eu ignoro:
/build
/.idea
(com possíveis exceções, veja os comentários na resposta de dalewking )*.iml
local.properties
Eu acho que quase todo mundo concorda em /build
.
Fiquei cansado de ver constantemente mensagens sobre os vários library.xml
arquivos que Gradle cria ou exclui /.idea
. Eles build.gradle
serão executados no local dos desenvolvedores quando eles fizerem o check-out pela primeira vez. Por que esses arquivos XML precisam ser versionados? O Android Studio também gerará o restante /.idea
quando um desenvolvedor criar um projeto usando Check out from Version Control
, então por que algo nessa pasta precisa ser versionado?
Se a *.iml
versão for versionada, um novo usuário terá que nomear o projeto exatamente como era quando foi confirmado. Como este também é um arquivo gerado, por que versão em primeiro lugar?
Os local.properties
arquivos apontam para um caminho absoluto no sistema de arquivos para o SDK, portanto, definitivamente não deve ser versionado.
Editar 1 : Adicionado .gradle
para ignorar o material de armazenamento em cache do gradle que não deve ser versionado (obrigado Vasily Makarov ).
Edit 2 : Adicionado .DS_Store
agora que estou usando o Mac. Esta pasta é específica para Mac e não deve ser versionada.
Nota adicional : Você provavelmente também deseja adicionar um diretório para inserir suas chaves de assinatura ao criar uma versão de lançamento.
Para conveniência de copiar / colar :
.gradle
/build
/.idea
*.iml
local.properties
.DS_Store
build/
vez de /build
para corresponder aos diretórios de construção do módulo, como app/build
. Use .gradle
para corresponder ao diretório de armazenamento em cache gradle.
.gitignore
arquivo no diretório de aplicativos que também contém /build
. Isso é gerado automaticamente, não me lembro? Então build/
será aplicado a subpastas?
Eu uso esse .gitignore. Encontrei-o em: http://th4t.net/android-studio-gitignore.html
*.iml
*.iws
*.ipr
.idea/
.gradle/
local.properties
*/build/
*~
*.swp
No caso do Android Studio, os únicos arquivos que precisam ser salvos no controle de versão são os arquivos necessários para criar o aplicativo a partir da linha de comando usando gradle. Então você pode ignorar:
No entanto, se você salvar quaisquer configurações IDE, como configurações personalizadas de estilo de código, elas serão salvas na pasta .idea. Se você deseja essas alterações no controle de versão, salve os arquivos IDEA (* .iml e .idea).
Se você criar um projeto Gradle usando o Android Studio, o .gitignore
arquivo conterá o seguinte:
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
.DS_Store
/build
/captures
.externalNativeBuild
Eu recomendaria ignorar o diretório ".idea" completo, pois contém configurações específicas do usuário, nada importante para o processo de compilação.
A única coisa que deve estar na sua pasta de projeto (Gradle) após a clonagem de repositório é essa estrutura (pelo menos nos casos de uso que encontrei até agora):
app/
.git/
gradle/
build.gradle
.gitignore
gradle.properties
gradlew
gradle.bat
settings.gradle
É recomendável fazer o check-in nos scripts do wrapper gradle (veja aqui ).
Para disponibilizar os arquivos do Wrapper para outros desenvolvedores e ambientes de execução, você precisará verificá-los no controle de versão.
Meu conselho seria também para não ignorar a pasta .idea.
Importei um projeto Eclipse baseado em Git para o Android Studio e isso foi bom. Mais tarde, quis importar este projeto com o Git (como a primeira vez) para outra máquina com o Android Studio, mas isso não funcionou. O Android Studio carregou todos os arquivos, mas não conseguiu "ver" o projeto como um projeto. Eu só consegui abrir arquivos Git.
Ao importar o projeto pela primeira vez (do Eclipse para o Android Studio), meu antigo .gitignore foi substituído e o novo ficou assim:
Então, tentei usar um gitignore vazio e agora funcionava. O outro Android Studio pode carregar os arquivos e o Projeto. Acho que alguns arquivos não são importantes (profiles_settings.xml)
para o Git e a importação, mas estou feliz por ter funcionado.
É a melhor maneira de gerar .gitignore
via aqui
Não há necessidade de adicionar ao controle de origem qualquer um dos seguintes:
.idea/
.gradle/
*.iml
build/
local.properties
Portanto, você pode configurar o hgignore ou o gitignore de acordo.
A primeira vez que um desenvolvedor clona o controle de origem pode:
Isso é tudo
PS: O Android Studio obterá, através do maven, o plug-in gradle, assumindo que o seu build.gradle seja semelhante a este:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.2'
}
}
allprojects {
repositories {
mavenCentral()
}
}
O Android studio irá gerar o conteúdo da pasta .idea (incluindo o workspace.xml, que não deve estar no controle de origem porque é gerado ) e a pasta .gradle.
Essa abordagem é compatível com o Eclipse da maneira que o controle de origem realmente não sabe nada sobre o Android Studio. O Android Studio só precisa do build.gradle para importar um projeto e gerar o restante.
There is NO NEED
sim, existem alguns casos: modelos de direitos autorais que precisam ser compartilhados entre os membros da equipe, por exemplo.
Apoio a confirmação da pasta .idea (excluindo workspace.xml
etasks.xml
). Mas estou começando a concluir que os arquivos .iml devem ser ignorados.
Aqui está o problema:
Abra um projeto em um diretório chamado "foo", por exemplo, e você obterá foo.iml e tudo parecerá bem. O problema é que, se eu simplesmente renomear o diretório para foo2 (ou cloná-lo em outro nome de diretório) ao tentar abrir o projeto no Android Studio, você obterá três coisas:
Não consigo encontrar uma maneira de impedir que o Android Studio faça essa geração de arquivos iml quando o projeto é armazenado em um diretório diferente. Adicioná-los ao controle de origem causará problemas. Portanto, acho que talvez devêssemos ignorar os arquivos * .iml e.idea/modules.xml
/.idea
e .iml
. Gostaria de saber por que a .idea
pasta deve ser confirmada.
library.xml
arquivos que continuavam acionando as mensagens. Além disso, não entendo por que continuo vendo as pessoas dizerem que os arquivos * .iml devem ser incluídos, por isso é ótimo.
Testado com Android Studio 3.0
Pode ser necessário instalar o .ignore plugin .
Você pode gerar automaticamente o arquivo .gitignore para Android. Clique com o botão direito na pasta e siga
Em seguida, selecione Android no painel esquerdo e clique em Gerar
O Android Studio gera um arquivo .gitignore que contém todo o arquivo necessário para ser ignorado.
Retirado de http://menukanows.com/how-to-add-gitignore-file-in-android-project/
Depende de como o formato do seu projeto é mantido:
Você tem duas opções:
.idea
pasta que contém os arquivos específicos do projeto).iws
e .ipr
)Ref: http://www.jetbrains.com/idea/webhelp/project.html
Os arquivos comprometidos com o controle de versão dependem do acima:
workspace.xml
e
tasks.xml
.ipr
arquivo de controle de versão e todos os .iml
arquivos do módulo excluem o .iws
arquivo, pois ele armazena configurações específicas do usuário.Ref: https://intellij-support.jetbrains.com/entries/23393067
Basicamente, qualquer arquivo que é regenerado automaticamente.
Um bom teste é clonar seu repositório e ver se o Android Studio é capaz de interpretar e executar seu projeto imediatamente (gerando o que está faltando).
Caso contrário, encontre o que está faltando e verifique se ele não é ignorado, mas adicionado ao repositório.
Dito isto, você pode dar exemplo de .gitignore
arquivos existentes , como o Android .
# 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
# Eclipse project files
.classpath
.project
# Proguard folder generated by Eclipse
proguard/
# Intellij project files
*.iml
*.ipr
*.iws
.idea/
Estou ciente de adicionar os arquivos .iml e Intellij sez para adicionar a pasta .idea, mas ignore .idea / workspace.xml e .idea / tasks.xml, mas e quanto a .idea / libraries /?
Não vejo como faz sentido adicionar isso. Ele possui uma lista de arquivos XML que listam as bibliotecas que o projeto Android Studio deve conhecer. Eles devem vir das dependências definidas pelo build.gradle - não um arquivo de projeto do IDE.
Além disso, o conteúdo de um desses arquivos se parece com o seguinte:
<component name="libraryTable">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.example/example/etc...jar!"/>
Não faz sentido comprometer isso. E se o usuário especificou um diretório inicial diferente para gradle, ou se eles usarem uma versão diferente, o caminho abaixo .gradle/caches/artifacts-xxx
será diferente para eles (ou seja, artifacts-
o número anexado ao final se relacionará ao lançamento da versão gradle que você está usando. ) Esses caminhos não são universais e, no entanto, o conselho é verificar tudo isso?
A partir do .gitignore
arquivo Android Studio 0.8.4 é gerado automaticamente ao iniciar um novo projeto. Por padrão, ele contém:
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
Eu sei que esse é um tópico antigo e certamente existem muitas opções, mas eu realmente prefiro gibo
Simon Whitaker. É super simples de usar, multiplataforma (mac, * nix e windows) e usa o repositório do github gitignore
para que esteja (basicamente) sempre atualizado.
Verifique se o cache local está atualizado:
$ gibo --upgrade
From https://github.com/github/gitignore
* branch master -> FETCH_HEAD
Current branch master is up to date.
Procure o idioma / tecnologia que você precisa:
$ gibo --search android
Android
Exiba o arquivo .gitignore:
$ gibo Android
### Android
# Built application files
*.apk
*.ap_
# Files for the Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
Agora, adicione-o ao arquivo .gitignore do seu projeto:
$ gibo Android >> .gitignore
(Certifique-se >>
de anexar ao arquivo .gitignore do seu projeto; um>
será sobrescrito - como já fiz muitas vezes por acidente!)
Eu sei que isso não está respondendo à pergunta exata do OP, mas o uso do gibo faz com que você praticamente não precise mais pensar na 'pergunta'! .. é legal! ;)
Para ter uma idéia melhor, tudo o que você precisa são os seguintes arquivos
Você pode colocar todo o resto no arquivo .gitignore. Todas as alterações no seu aplicativo estão principalmente nesses arquivos e pastas. O resto que você vê em um projeto básico são arquivos de compilação gradle ou arquivos de configuração do Android Studio.
Se você estiver usando o Android Studio, poderá usar "Importar projeto" para criar o projeto com sucesso. Como alternativa, você pode criar usando a linha de comando, siga Construindo Projetos Android com Gradle .
É melhor adicionar a lista .gitignore durante o tempo de desenvolvimento para evitar efeitos colaterais desconhecidos quando o Controle de Versão não funcionar por algum motivo, devido à lista predefinida (copiar / colar) de algum lugar. Para um dos meus projetos, a lista de ignorados é apenas de:
.gradle
.idea
libs
obj
build
*.log
O Github mantém itens úteis do gitignore para vários tipos de projetos. Aqui está a lista de itens úteis do gitignore para projetos Android.
# 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/libraries
# Keystore files
*.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
Mesclar arquivos .gitignore do Github
### Github Android.gitignore ###
# Built application files
*.apk
*.ap_
# Files for the Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
# 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/
### Github JetBrains.gitignore ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio
*.iml
## Directory-based project format:
.idea/
# if you remove the above rule, at least ignore the following:
# User-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# .idea/dictionaries
# Sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml
# .idea/uiDesigner.xml
# Gradle:
# .idea/gradle.xml
# .idea/libraries
# Mongo Explorer plugin:
# .idea/mongoSettings.xml
## File-based project format:
*.ipr
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
Leia: Suporte ao JetBrains: Como gerenciar projetos em sistemas de controle de versão
Usando a API fornecida pelo gitignore.io , você pode obter é gerado automaticamente. Aqui está o link direto também gitignore.io/api/androidstudio
### AndroidStudio ###
# Covers files to be ignored for android development using Android Studio.
# Built application files
*.apk
*.ap_
# Files for the ART/Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Gradle files
.gradle
.gradle/
build/
# Signing files
.signing/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio
/*/build/
/*/local.properties
/*/out
/*/*/build
/*/*/production
captures/
.navigation/
*.ipr
*~
*.swp
# Android Patch
gen-external-apklibs
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# NDK
obj/
# IntelliJ IDEA
*.iml
*.iws
/out/
# User-specific configurations
.idea/caches/
.idea/libraries/
.idea/shelf/
.idea/workspace.xml
.idea/tasks.xml
.idea/.name
.idea/compiler.xml
.idea/copyright/profiles_settings.xml
.idea/encodings.xml
.idea/misc.xml
.idea/modules.xml
.idea/scopes/scope_settings.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml
.idea/datasources.xml
.idea/dataSources.ids
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml
.idea/assetWizardSettings.xml
# OS-specific files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# Legacy Eclipse project files
.classpath
.project
.cproject
.settings/
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.war
*.ear
# virtual machine crash logs (Reference: http://www.java.com/en/download/help/error_hotspot.xml)
hs_err_pid*
## Plugin-specific files:
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Mongo Explorer plugin
.idea/mongoSettings.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
### AndroidStudio Patch ###
!/gradle/wrapper/gradle-wrapper.jar
# End of https://www.gitignore.io/api/androidstudio
A partir do arquivo .gitignore do Android Studio 0.8.4, é gerado automaticamente ao iniciar um novo projeto. Por padrão, ele contém:
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
build/
/captures
Concordo com esta declaração, no entanto, modifico esse arquivo para alterar / construir para construir / (Isso incluirá / build e / app / build). Portanto, não acabo com todos os arquivos em app / build no meu repositório.
Observe também que, se você importar um projeto do Eclipse, o .gitignore não será copiado ou "criado automaticamente" para você.
Compilação:
#built application files
*.apk
*.ap_
# files for the dex VM
*.dex
# Java class files
*.class
# generated files
bin/
gen/
# Gradle files
.gradle/
build/
/*/build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Windows thumbnail db
Thumbs.db
# OSX files
.DS_Store
# Eclipse project files
.classpath
.project
# Android Studio
*.iml
.idea
#.idea/workspace.xml - remove # and delete .idea if it better suit your needs.
.gradle
build/
# Intellij project files
*.iml
*.ipr
*.iws
.idea/
Para contornar a importação de todos os arquivos, nos quais o Android Studio ignora a lista "Arquivos ignorados", mas ainda utiliza o Android Studio VCS, fiz o seguinte: Isso usará a lista "Arquivos ignorados" do Android Studio (após a importação! Não durante) E evite ter que usar a maneira complicada que o Tortoise SVN define a lista svn: ignore.
A partir de agora, "Arquivos ignorados" será ignorado e você ainda poderá gerenciar o VCS no Android Studio.
Saúde, -Joost
Android Studio 3.5.3
Eu uso isso para minhas bibliotecas e projetos e abrange a maioria dos arquivos gerados pelo android studio e outras ferramentas famosas:
# Built application files
*.apk
*.ap_
*.aab
# Files for the ART/Dalvik VM
*.dex
# Generated files
bin/
gen/
out/
app/release/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# 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 lines if you do not want to check your keystore files in.
#*.jks
#*.keystore
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# Freeline
freeline.py
freeline/
freeline_project_description.json
# fastlane
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
fastlane/readme.md
#NDK
*.so
Isso é criado usando a referência de http://gitignore.io/ Onde você pode criar o arquivo gitignore atualizado mais recente para qualquer projeto. Para Android http://gitignore.io/api/androidstudio . Espero que isto ajude. Atualmente, estou usando o Android Studio 3.6.3
# Created by https://www.gitignore.io/api/androidstudio
# Edit at https://www.gitignore.io/?templates=androidstudio
### AndroidStudio ###
# Covers files to be ignored for android development using Android Studio.
# Built application files
*.apk
*.ap_
# Files for the ART/Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Gradle files
.gradle
.gradle/
build/
# Signing files
.signing/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio
/*/build/
/*/local.properties
/*/out
/*/*/build
/*/*/production
captures/
.navigation/
*.ipr
*~
*.swp
# Android Patch
gen-external-apklibs
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# NDK
obj/
# IntelliJ IDEA
*.iml
*.iws
/out/
# User-specific configurations
.idea/caches/
.idea/libraries/
.idea/shelf/
.idea/workspace.xml
.idea/tasks.xml
.idea/.name
.idea/compiler.xml
.idea/copyright/profiles_settings.xml
.idea/encodings.xml
.idea/misc.xml
.idea/modules.xml
.idea/scopes/scope_settings.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml
.idea/datasources.xml
.idea/dataSources.ids
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml
.idea/assetWizardSettings.xml
# OS-specific files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# Legacy Eclipse project files
.classpath
.project
.cproject
.settings/
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.war
*.ear
# virtual machine crash logs (Reference: http://www.java.com/en/download/help/error_hotspot.xml)
hs_err_pid*
## Plugin-specific files:
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Mongo Explorer plugin
.idea/mongoSettings.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
### AndroidStudio Patch ###
!/gradle/wrapper/gradle-wrapper.jar
# End of https://www.gitignore.io/api/androidstudio
Esta documentação oficial do Suporte JetBrains diz que o seguinte deve ser incluído:
All files under .idea directory except workspace.xml and tasks.xml because
they store specific user settings
All the *.iml files that can be located in different module directories
Ele também fornece outras recomendações de coisas com as quais você deve ter cuidado.
.gitignore da biblioteca AndroidRate
# Copyright 2017 - 2018 Vorlonsoft LLC
#
# Licensed under The MIT License (MIT)
# Built application files
*.ap_
*.apk
# Built library files
*.aar
*.jar
# Built native files
*.o
*.so
# Files for the Dalvik/Android Runtime (ART)
*.dex
*.odex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Gradle files
.gradle/
build/
# Local configuration file (sdk/ndk path, etc)
local.properties
# Windows thumbnail cache
Thumbs.db
# macOS
.DS_Store/
# Log Files
*.log
# Android Studio
.navigation/
captures/
output.json
# NDK
.externalNativeBuild/
obj/
# IntelliJ
## User-specific stuff
.idea/**/tasks.xml
.idea/**/workspace.xml
.idea/dictionaries
## Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/dynamic.xml
.idea/**/sqlDataSources.xml
.idea/**/uiDesigner.xml
## Gradle
.idea/**/gradle.xml
.idea/**/libraries
## VCS
.idea/vcs.xml
## Module files
*.iml
## File-based project format
*.iws
https://github.com/github/gitignore é uma coleção incrível
Android.gitignore
# 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