Что должно быть в моем.gitignore для проекта Android Studio?

Какие файлы должны быть в моем .gitignore для проекта Android Studio?

Я видел несколько примеров, которые все включают .iml но документы IntelliJ говорят, что .iml должен быть включен в ваш источник контроля.

33 ответа

Решение

Обновлено до Android Studio 3.0 Пожалуйста, поделитесь недостающими элементами в комментариях.

Поздний ответ, но ни один из ответов здесь и здесь не был прав на деньги для нас...

Итак, вот наш файл 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

Начиная с Android Studio 2.2 и до 3.0 новые проекты создаются с помощью этого файла gitignore:

*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.externalNativeBuild

Устаревший - для более старого формата проекта добавьте этот раздел в файл gitignore:


/*/out
/*/*/build
/*/*/production
*.iws
*.ipr
*~
*.swp

Этот файл должен находиться в корневой папке проекта, а не в папке модуля проекта.

Редактировать заметки:

  1. Начиная с версии 0.3+ кажется, что вы можете фиксировать и отправлять файлы *.iml и build.gradle. Если ваш проект основан на Gradle: в новом диалоге открытия / импорта вы должны проверить "use auto import" флажок и отметьте "use default gradle wrapper (recommended)" переключатель. Все пути теперь относительны, как предложил @George.

  2. Обновленный ответ в соответствии с приложенным источником @128KB и предложениями @Skela

Основываясь на моем обычном Android .gitignore, и после прочтения документации на веб-сайте Intellij IDEA и чтения постов в Stackru, я создал следующий файл:

# 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

Также обратите внимание, что, как указывалось, раздел встроенных собственных файлов в первую очередь полезен, когда вы создаете свой собственный встроенный код с помощью Android NDK. Если, с другой стороны, вы используете стороннюю библиотеку, которая включает эти файлы, вы можете удалить эти строки (*.o и *.so) из вашего.gitignore.

Обновлено 7/2015:

Вот окончательный источник от JetBrains


Каталог на основе формата проекта (каталог.idea)

Этот формат используется всеми последними версиями IDE по умолчанию. Вот что вам нужно поделиться:

  • Все файлы в .idea каталог в корне проекта, кроме workspace.xml а также tasks.xml файлы, в которых хранятся пользовательские настройки
  • Все .iml файлы модулей, которые могут находиться в разных каталогах модулей (относится к IntelliJ IDEA)

Будьте осторожны, сообщая следующее:

  • Android-артефакты, которые создают подписанную сборку (будут содержать пароли хранилища ключей)
  • В ИДЕЯ 13 и ранее dataSources.ids, datasources.xml может содержать пароли базы данных. ИДЕЯ 14 решает эту проблему.

Вы можете подумать не делиться следующим:

  • файл gradle.xml, смотрите это обсуждение
  • папка пользовательских словарей (чтобы избежать конфликтов, если другой разработчик имеет такое же имя)
  • XML-файлы в .idea/libraries в случае, если они генерируются из проекта Gradle

Устаревший формат проекта (.ipr / .iml / .iws файлы)

  • Поделись проектом .ipr файл и все .iml файлы модуля, не делитесь .iws файл, поскольку он хранит пользовательские настройки

Хотя эти инструкции предназначены для IntelliJ IDEA, они верны на 100% для Android Studio.


Вот .gitignore фрагмент, который включает в себя все вышеперечисленные правила:

# Android Studio / IntelliJ IDEA 
*.iws
.idea/libraries
.idea/tasks.xml
.idea/vcs.xml
.idea/workspace.xml

Для проектов Android Studio 3.0 используйте следующее:

.gitignore

.gradle
.idea
*.iml
gradle.properties
local.properties
.DS_Store
build

Папка проекта Gradle

Единственное, что должно быть в вашей (Gradle) папке проекта после клонирования репозитория, - это структура (по крайней мере, для тех случаев использования, с которыми я сталкивался до сих пор):

/app
/gradle
.gitignore
build.gradle
build.properties
gradlew
gradle.bat
settings.gradle

Я не согласен со всеми этими ответами. Следующая конфигурация отлично работает для приложения нашей организации.

Я игнорирую

  • /build
  • /.idea (с возможными исключениями, см. комментарии в ответе dalewking)
  • *.iml
  • local.properties

Я думаю, что почти все согласны с /build,

Мне надоело постоянно видеть сообщения о различных library.xml файлы, которые Gradle создает или удаляет в /.idea, build.gradle будет запускаться на локальных серверах разработчиков при первой проверке проекта, так почему же эти XML-файлы должны быть версионными? Android Studio также будет генерировать остальные /.idea когда разработчик создает проект с использованием Check out from Version Controlтак почему же что-то в этой папке должно быть версионным?

Если *.iml Версионно новый пользователь должен будет назвать проект точно так же, как это было при фиксации. Так как это также сгенерированный файл, почему его версия в первую очередь?

local.properties files указывает на абсолютный путь в файловой системе для SDK, поэтому он не должен быть версионным.

Редактировать 1: Добавлено .gradle игнорировать вещи с кэшированием gradle, которые не должны быть версионированы (спасибо Vasily Makarov).

Редактировать 2: Добавлено .DS_Store теперь, когда я использую Mac. Эта папка предназначена для Mac и не должна быть версионной.

Дополнительное примечание. Возможно, вы также захотите добавить каталог, в который будут помещаться ваши подписывающие ключи при создании версии выпуска.

Для удобства копирования / вставки:

.gradle
/build
/.idea
*.iml
local.properties
.DS_Store 

Я использую этот.gitignore. Я нашел это по адресу: http://th4t.net/android-studio-gitignore.html

*.iml
*.iws
*.ipr
.idea/
.gradle/
local.properties

*/build/

*~
*.swp

В случае Android Studio единственными файлами, которые необходимо сохранить в системе управления версиями, являются файлы, необходимые для сборки приложения из командной строки с использованием gradle. Таким образом, вы можете игнорировать:

  • *.iml
  • .idea
  • строить

Тем не менее, если вы сохраните какие-либо настройки IDE, такие как пользовательские настройки стиля кода, они будут сохранены в папке.idea. Если вы хотите эти изменения в управлении версиями, то вы также должны сохранить файлы IDEA (*.iml и.idea).

Я бы также посоветовал не игнорировать папку.idea.

Я импортировал основанный на Git проект Eclipse в Android Studio, и все прошло хорошо. Позже я хотел импортировать этот проект с помощью Git (как в первый раз) на другую машину с Android Studio, но это не сработало. Android Studio загрузила все файлы, но не смогла "увидеть" проект как проект. Я мог только открыть Git-файлы.

При первом импорте проекта (из Eclipse в Android Studio) мой старый.gitignore был перезаписан, а новый выглядел так:

  • .idea /.name
  • .idea / compiler.xml
  • .idea / авторское право / profiles_settings.xml
  • .idea / encodings.xml
  • .idea / библиотеки / libs.xml
  • .idea / misc.xml
  • .idea / modules.xml
  • .idea / прицелы / scope_settings.xml
  • .idea / vcs.xml
  • .idea / workspace.xml

Итак, я попытался использовать пустой gitignore, и теперь это сработало. Другая Android Studio может загружать файлы и проект. Я думаю, некоторые файлы не важны (profiles_settings.xml) для Git и импорта, но я просто счастлив, что это сработало.

Это лучший способ генерировать .gitignore через здесь

НЕТ НЕОБХОДИМОСТИ добавлять к исходному элементу управления любое из следующего:

.idea/
.gradle/
*.iml
build/
local.properties

Таким образом, вы можете настроить hgignore или gitignore соответственно.

Первый раз, когда разработчик клонирует исходный код, можно перейти:

  1. Откройте Android Studio
  2. Импортировать проект
  3. Найдите файл build.gradle в клонированном репозитории и откройте его

Это все

PS: Android Studio через maven получит плагин gradle, предполагая, что ваш build.gradle выглядит примерно так:

// 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()
    }
}

Студия Android сгенерирует содержимое папки.idea (включая workspace.xml, который не должен находиться в управлении исходным кодом, поскольку оно генерируется) и папку.gradle.

Этот подход дружествен к Eclipse, так как система контроля версий ничего не знает о Android Studio. Android Studio просто нужен build.gradle для импорта проекта и генерации всего остального.

Я поддерживаю фиксацию папки.idea (исключая workspace.xml а также tasks.xml). Но я начинаю приходить к выводу, что файлы.iml следует игнорировать.

Вот проблема:

Например, откройте проект в каталоге с именем "foo", и вы получите foo.iml, и все это выглядит хорошо. Проблема в том, что если я просто переименую каталог в foo2 (или клонирую его в другое имя каталога) при попытке открыть проект в Android Studio, вы получите три вещи:

  • Новый IML-файл с именем foo2.iml
  • Файл iml для вашего проекта Android будет изменен, чтобы теперь указывать на foo2 в качестве его родителя.
  • В.idea / modules.xml будет добавлена ​​строка для foo2.iml, поэтому в нем есть как старый файл iml, так и файл для нового каталога.

Я не могу найти способ помешать Android Studio выполнять генерацию этого iml-файла, когда проект хранится в другом каталоге. Добавление их в систему управления версиями вызовет проблемы. Поэтому я думаю, что, возможно, мы должны игнорировать файлы *.iml и .idea/modules.xml

Зависит от того, как поддерживается формат вашего проекта:

У вас есть два варианта:

  1. Формат на основе каталогов (у вас будет .idea папка, содержащая файлы проекта
  2. Файловый формат (файлы конфигурации .iws а также .ipr)

Ссылка: http://www.jetbrains.com/idea/webhelp/project.html

Файлы, переданные на контроль версий, зависят от вышеизложенного:

  1. Включить папку.idea в систему контроля версий, исключить workspace.xml а такжеtasks.xml
  2. Контроль версий .ipr файл и все .iml файлы модулей, исключая .iws файл, так как он хранит пользовательские настройки.

Ссылка: https://intellij-support.jetbrains.com/entries/23393067

Протестировано с Android Studio 3.0

Вам может понадобиться установить плагин .ignore.

Вы можете автоматически сгенерировать файл.gitignore для Android. Щелкните правой кнопкой мыши на папке и следуйте

Добавить файл.gitignore

Затем выберите Android на левой панели и нажмите " Создать"

Создать файл.gitignore

Android Studio создаст файл.gitignore, который содержит все файлы, которые нужно игнорировать.

Взято с http://menukanows.com/how-to-add-gitignore-file-in-android-project/

В основном любой файл, который автоматически восстанавливается.

Хороший тест - клонировать репозиторий и посмотреть, сможет ли Android Studio интерпретировать и запустить ваш проект немедленно (сгенерировать то, чего не хватает).
Если нет, найдите то, чего не хватает, и убедитесь, что оно не игнорируется, а добавляется в репо.

При этом, вы можете взять пример на существующих .gitignore файлы, такие как 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/

Используя API, предоставленный https://www.gitignore.io/, вы можете получить автоматически генерируется. Вот прямая ссылка также https://www.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

Начиная с Android Studio 0.8.4 .gitignore файл генерируется автоматически при запуске нового проекта. По умолчанию он содержит:

.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build

Я не согласен с добавлением файлов.iml и Intellij sez для добавления папки.idea, но игнорирую.idea/workspace.xml и.idea/tasks.xml, но как насчет.idea/library /?

Я не понимаю, как имеет смысл добавить это. Он содержит список файлов XML, в котором перечислены библиотеки, о которых должен знать проект Android Studio. Предполагается, что они приходят из определенных зависимостей build.gradle, а не из файла проекта IDE.

Также содержимое одного из этих файлов выглядит так:

<component name="libraryTable">
    <CLASSES>
       <root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.example/example/etc...jar!"/>

Нет смысла совершать это. Что если пользователь указал другой домашний каталог для Gradle, или если он использует другую версию Gradle, путь под .gradle/caches/artifacts-xxx будет отличаться для них (то есть artifacts- число, добавленное в конце, будет относиться к выпуску версии Gradle, который вы используете.) Эти пути не универсальны, и, тем не менее, советуется проверить все это?

Я знаю, что это старая тема, и вариантов, конечно, много, но я действительно предпочитаю gibo Саймон Уитакер. Это очень простой в использовании, кроссплатформенный (Mac, * NIX и Windows), и использует GitHub gitignore репо, так что (в основном) всегда в курсе.

Убедитесь, что ваш локальный кеш обновлен:

    $ gibo --upgrade
    From https://github.com/github/gitignore
     * branch            master     -> FETCH_HEAD
    Current branch master is up to date.

Поиск нужного вам языка / технологии:

    $ gibo --search android
    Android

Отобразить файл.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

Теперь добавьте его в файл.gitignore вашего проекта:

    $ gibo Android >> .gitignore

(Убедитесь, что вы используете >> добавить в файл.gitignore вашего проекта; один > перезапишу - как я много раз делал по случайности!)

Я знаю, что это не отвечает на точный вопрос ОП, но использование gibo делает его таким образом, что вам больше не нужно думать о "вопросе"! .. мило!;)

Github поддерживает полезные элементы gitignore для различных проектов. Вот список полезных элементов gitignore для проектов 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

Android Gitignore в github

Лучше всего добавлять список.gitignore во время разработки, чтобы предотвратить неизвестный побочный эффект, когда контроль версий не работает по какой-то причине из-за заранее определенного (копировать / вставить) списка откуда-то. Для одного из моих проектов список игнорирования состоит только из:

.gradle
.idea
libs
obj
build
*.log

Чтобы получить лучшее представление, вам нужны только следующие файлы

  • приложение
  • build.gradle
  • settings.gradle

Базовая структура проекта Android

Вы можете поместить все остальное в файл.gitignore. Все изменения вашего приложения в основном находятся в этих файлах и папках. Остальное, что вы видите в базовом проекте, это файлы сборки Gradle или файлы конфигурации Android Studio.

Если вы используете Android Studio, вы можете использовать "Импорт проекта" для успешной сборки проекта. В качестве альтернативы вы можете построить с помощью командной строки, следуя Построение проектов Android с Gradle.

Я объединяю файлы Github .gitignore

### 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

Пожалуйста, прочитайте: Поддержка JetBrains: Как управлять проектами в системах контроля версий

Он создается с использованием ссылки http://gitignore.io/, где вы можете создать последний обновленный файл gitignore для любого проекта. Для Android http://gitignore.io/api/androidstudio. Надеюсь это поможет. В настоящее время я использую 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

Android Studio 3.5.3

Я использую его для своих библиотек и проектов, и он охватывает большинство файлов, которые создаются студией Android и другими известными инструментами:

# 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

Начиная с версии Android Studio 0.8.4 .gitignore файл генерируется автоматически при запуске нового проекта. По умолчанию он содержит:

.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
build/
/captures

Я согласен с этим утверждением, однако я изменяю этот файл, чтобы изменить / построить для сборки / (это будет включать в себя / build и / app / build), поэтому я не получаю все файлы в app / build в моем репозитории.

Также обратите внимание, что если вы импортируете проект из Eclipse,.gitignore не будет скопирован или "автоматически" создан для вас.

Вы можете автоматически генерировать.gitignoreшаблоны для любого типа проекта на этом сайте

Компиляция:

#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/

Чтобы обойти импорт всех файлов, где Android Studio игнорирует список "Игнорируемые файлы", но при этом использует Android Studio VCS, я сделал следующее: При этом будет использоваться список "Игнорируемые файлы" из Android Studio (после импорта! Не во время) И избегайте использования громоздкого способа, которым Tortoise SVN устанавливает список svn:ignore.

  1. Используйте обозреватель Tortoise SVN-репозиторий, чтобы создать новую папку проекта прямо в репозитории.
  2. Используйте Tortoise SVN для извлечения новой папки поверх папки, которую вы хотите импортировать. Вы получите предупреждение о том, что локальная папка не пуста. Не обращайте внимания на предупреждение. Теперь у вас есть версионная папка верхнего уровня с неверсионным контентом.
  3. Откройте ваш проект из локального рабочего каталога. VCS теперь должен быть включен автоматически
  4. Установите исключения для файлов в меню "Файл" -> "Настройки" -> "Контроль версий" -> "Проигнорированные файлы".
  5. Добавить файлы в SVN из Android Studio: выберите "Приложение" в Структуре проекта -> VCS -> Добавить в VCS (это добавит все файлы, кроме "Игнорируемых файлов")
  6. Зафиксировать изменения

В дальнейшем "Игнорируемые файлы" будут игнорироваться, и вы по-прежнему сможете управлять VCS из Android Studio.

Ура, Joost

https://github.com/github/gitignore - это потрясающая коллекция

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
    ### 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
Другие вопросы по тегам