Какие файлы должны быть в моем .gitignore
проекте Android Studio?
Я видел несколько примеров, которые все включают, .iml
но документы IntelliJ говорят, что они .iml
должны быть включены в ваш источник контроля.
git
android-studio
gitignore
respectTheCode
источник
источник
Ответы:
Обновлено до Android Studio 3.0 Пожалуйста, поделитесь недостающими элементами в комментариях.
Поздний ответ, но ни один из ответов здесь и здесь не был прав на деньги для нас ...
Итак, вот наш файл gitignore:
Начиная с Android Studio 2.2 и до 3.0, новые проекты создаются с помощью этого файла gitignore:
Устаревший - для старого формата проекта добавьте этот раздел в файл gitignore:
Этот файл должен находиться в корневой папке проекта, а не в папке модуля проекта.
Редактировать заметки:
Начиная с версии 0.3+ кажется, что вы можете фиксировать и отправлять файлы * .iml и build.gradle . Если ваш проект основан на Gradle: в новом диалоге открытия / импорта вы должны поставить галочку
"use auto import"
и отметить"use default gradle wrapper (recommended)"
переключатель. Все пути теперь относительны, как предложил @George.Обновленный ответ в соответствии с приложенным источником @ 128KB и предложениями @Skela
источник
.iml
файлов, если вы не хотите иметь дело с ненужными раздражениями, если другие пользователи по-разному называют проект при выходе.Основываясь на моем обычном Android .gitignore , и после прочтения документации на веб-сайте Intellij IDEA и чтения сообщений в StackOverflow, я создал следующий файл:
Также обратите внимание, что, как указывалось, раздел « встроенные нативные файлы » в первую очередь полезен при создании собственного нативного кода с помощью Android NDK. Если, с другой стороны, вы используете стороннюю библиотеку, которая включает эти файлы, вы можете удалить эти строки (* .o и * .so) из вашего .gitignore.
источник
.idea/libraries
? Должны ли они быть переданы или исключены по вашему мнению?Обновлено 7/2015:
Вот окончательный источник от JetBrains
Каталог на основе формата проекта (каталог .idea)
Этот формат используется всеми последними версиями IDE по умолчанию. Вот что вам нужно поделиться:
.idea
директории в корне проекта , за исключением техworkspace.xml
иtasks.xml
файлов , какие настройки конкретных хранения пользовательских.iml
файлы модулей, которые могут находиться в разных каталогах модулей (относится к IntelliJ IDEA)Будьте осторожны, сообщая следующее:
dataSources.ids
,datasources.xml
могут содержать пароли баз данных. ИДЕЯ 14 решает эту проблему .Вы можете подумать не делиться следующим:
.idea/libraries
в случае, если они созданы из проекта GradleУстаревший формат проекта (
.ipr
/.iml
/.iws
файлы).ipr
файл проекта и все.iml
файлы модуля, не делитесь им, так.iws
как в нем хранятся пользовательские настройкиХотя эти инструкции предназначены для IntelliJ IDEA, они верны на 100% для Android Studio.
Вот
.gitignore
фрагмент, который включает в себя все вышеперечисленные правила:источник
<orderEntry type="jdk" jdkName="1.6 (38)" jdkType="JavaSDK" />
Обратите внимание на число 38, которое, похоже, постоянно увеличивается. (файл misc.xml также имеет эту проблему).Я не согласен со всеми этими ответами. Следующая конфигурация отлично работает для приложения нашей организации.
Я игнорирую
/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
файлы указывает на абсолютный путь в файловой системе для SDK, так что это, безусловно , не должно быть версированными.Редактировать 1 : Добавлено,
.gradle
чтобы игнорировать материал кэширования Gradle, который не должен быть версионным (спасибо Василию Макарову ).Редактировать 2 : Добавлено
.DS_Store
теперь, когда я использую Mac. Эта папка предназначена для Mac и не должна быть версионной.Дополнительное примечание . Возможно, вы также захотите добавить каталог, в который будут помещаться ваши подписывающие ключи при создании версии выпуска.
Для удобства копирования / вставки :
источник
build/
вместо того,/build
чтобы соответствовать dir сборки модуля, какapp/build
. Используется.gradle
для соответствия директории кэширования gradle..gitignore
файл в каталоге приложений, который также содержит/build
. Это авто генерируется, я не помню? Такbuild/
будет применяться к подпапкам?Я использую этот .gitignore. Я нашел это по адресу: http://th4t.net/android-studio-gitignore.html
источник
В случае Android Studio единственными файлами, которые необходимо сохранить в системе управления версиями, являются файлы, необходимые для сборки приложения из командной строки с использованием gradle. Таким образом, вы можете игнорировать:
Тем не менее, если вы сохраните какие-либо настройки IDE, такие как пользовательские настройки стиля кода, они будут сохранены в папке .idea. Если вы хотите эти изменения в управлении версиями, то вы также должны сохранить файлы IDEA (* .iml и .idea).
источник
Android Studio 3.4
Если вы создадите проект Gradle с помощью Android Studio,
.gitignore
файл будет содержать следующее:.gitignore
Я бы порекомендовал игнорировать полный каталог ".idea", поскольку он содержит пользовательские конфигурации, ничего важного для процесса сборки.
Папка проекта Gradle
Единственное, что должно быть в вашей (Gradle) папке проекта после клонирования репозитория, - это структура (по крайней мере, для случаев использования, с которыми я сталкивался до сих пор):
Рекомендуется проверить скрипты Gradle-оболочки (см. Здесь ).
источник
Я бы также посоветовал не игнорировать папку .idea.
Я импортировал основанный на Git проект Eclipse в Android Studio, и все прошло хорошо. Позже я хотел импортировать этот проект с помощью Git (как в первый раз) на другую машину с Android Studio, но это не сработало. Android Studio загрузила все файлы, но не смогла «увидеть» проект как проект. Я мог только открыть Git-файлы.
При первом импорте проекта (из Eclipse в Android Studio) мой старый .gitignore был перезаписан, а новый выглядел так:
Итак, я попытался использовать пустой gitignore, и теперь это сработало. Другая Android Studio может загружать файлы и проект. Я предполагаю, что некоторые файлы не важны
(profiles_settings.xml)
для Git и импорта, но я просто счастлив, что это сработало.источник
Это лучший способ генерировать
.gitignore
через здесьисточник
НЕТ НЕОБХОДИМОСТИ добавлять к исходному элементу управления любое из следующего:
Таким образом, вы можете настроить hgignore или gitignore соответственно.
Первый раз, когда разработчик клонирует исходный код, можно перейти:
Это все
PS: Android Studio через maven получит плагин gradle, предполагая, что ваш build.gradle выглядит примерно так:
Студия Android сгенерирует содержимое папки .idea (включая файл workspace.xml, который не должен находиться в управлении исходным кодом, поскольку он генерируется). ) и папку .gradle.
Этот подход дружествен к Eclipse, так как система контроля версий ничего не знает об Android Studio. Android Studio просто нужен build.gradle для импорта проекта и генерации всего остального.
источник
There is NO NEED
да, есть несколько случаев: например, шаблоны авторских прав, которыми нужно делиться между членами команды.Я поддерживаю фиксацию папки .idea (исключая
workspace.xml
иtasks.xml
). Но я начинаю приходить к выводу, что файлы .iml следует игнорировать.Вот проблема:
Например, откройте проект в каталоге с именем «foo», и вы получите foo.iml, и все это выглядит хорошо. Проблема в том, что если я просто переименую каталог в foo2 (или клонирую его в другое имя каталога), когда вы попытаетесь открыть проект в Android Studio, вы получите три вещи:
Я не могу найти способ помешать Android Studio выполнять генерацию IML-файла, когда проект хранится в другом каталоге. Добавление их в систему управления версиями вызовет проблемы. Поэтому я думаю, что, возможно, мы должны игнорировать файлы * .iml и
.idea/modules.xml
источник
/.idea
и.iml
файлы. Я хотел бы услышать, почему.idea
папка должна быть зафиксирована.library.xml
файлы, которые продолжали вызывать сообщения. Кроме того, я не понимаю, почему я продолжаю видеть, как люди говорят, что * .iml файлы должны быть включены, так что замечательно.Протестировано с Android Studio 3.0
Вам может понадобиться установить плагин .ignore .
Вы можете автоматически сгенерировать файл .gitignore для Android. Щелкните правой кнопкой мыши на папке и следуйте
Затем выберите Android на левой панели и нажмите « Создать»
Android Studio создаст файл .gitignore, который содержит все файлы, которые нужно игнорировать.
Взято с http://menukanows.com/how-to-add-gitignore-file-in-android-project/
источник
Зависит от того, как поддерживается формат вашего проекта:
У вас есть два варианта:
.idea
папка, содержащая файлы проекта).iws
и.ipr
)Ссылка: http://www.jetbrains.com/idea/webhelp/project.html
Файлы, переданные на контроль версий, зависят от вышеизложенного:
workspace.xml
иtasks.xml
.ipr
Файл контроля версий и все.iml
файлы модуля исключают этот.iws
файл, поскольку в нем хранятся пользовательские настройки.Ссылка: https://intellij-support.jetbrains.com/entries/23393067
источник
В основном любой файл, который автоматически восстанавливается.
Хороший тест - клонировать репозиторий и посмотреть, сможет ли Android Studio интерпретировать и запустить ваш проект немедленно (сгенерировать то, чего не хватает).
Если нет, найдите то, чего не хватает, и убедитесь, что оно не игнорируется, а добавляется в репо.
При этом вы можете взять пример существующих
.gitignore
файлов, таких как Android .источник
Я не согласен с добавлением файлов .iml и Intellij sez для добавления папки .idea, но игнорирую .idea / workspace.xml и .idea / tasks.xml, но как насчет .idea / library /?
Я не понимаю, как имеет смысл добавить это. Он содержит список файлов XML, в котором перечислены библиотеки, о которых должен знать проект Android Studio. Предполагается, что они приходят из определенных зависимостей build.gradle, а не из файла проекта IDE.
Также содержимое одного из этих файлов выглядит так:
Нет смысла совершать это. Что, если пользователь указал другой домашний каталог для Gradle или если он использует другую версию Gradle, путь
.gradle/caches/artifacts-xxx
к нему будет другим для него (т.artifacts-
Е. Число, добавленное в конце, будет относиться к выпуску версии Gradle, который вы используете. ) Эти пути не универсальны, и все же совет должен все это проверить?источник
Начиная с версии Android Studio 0.8.4
.gitignore
файл генерируется автоматически при запуске нового проекта. По умолчанию он содержит:источник
Я знаю, что это старая тема, и вариантов, конечно, много, но я действительно предпочитаю
gibo
Саймона Уитакера. Он очень прост в использовании, кроссплатформенный (mac, * nix и windows) и использует репозиторий github,gitignore
поэтому он (в основном) всегда актуален.Убедитесь, что ваш локальный кеш обновлен:
Поиск нужного языка / технологии:
Отобразить файл .gitignore:
Теперь добавьте его в файл .gitignore вашего проекта:
(Убедитесь, что вы используете
>>
для добавления к файлу .gitignore вашего проекта; один>
перезапишет его - как я делал много раз по случайности!)Я знаю, что это не отвечает на точный вопрос ОП, но использование gibo делает это так, что вам больше не нужно думать о «вопросе»! .. мило! ;)
источник
Чтобы получить лучшее представление, вам нужны только следующие файлы
Вы можете поместить все остальное в файл .gitignore. Все изменения вашего приложения в основном находятся в этих файлах и папках. Остальное, что вы видите в базовом проекте, это файлы сборки Gradle или файлы конфигурации Android Studio.
Если вы используете Android Studio, вы можете использовать «Импорт проекта» для успешной сборки проекта. В качестве альтернативы вы можете построить с помощью командной строки, следуя Построение проектов Android с Gradle .
источник
Лучше всего добавлять список .gitignore во время разработки, чтобы предотвратить неизвестный побочный эффект, когда контроль версий по какой-то причине не работает из-за заранее определенного (копировать / вставить) списка откуда-то. Для одного из моих проектов список игнорирования состоит только из:
источник
Github содержит полезные элементы gitignore для различных проектов. Вот список полезных элементов gitignore для проектов Android.
Android Gitignore в github
источник
Я объединяю файлы Github .gitignore
Пожалуйста, прочитайте: Поддержка JetBrains: Как управлять проектами в системах контроля версий
источник
Используя API, предоставленный gitignore.io , вы можете получить автоматически генерируется. Вот прямая ссылка также gitignore.io/api/androidstudio
источник
Начиная с версии Android Studio 0.8.4 .gitignore файл генерируется автоматически при запуске нового проекта. По умолчанию он содержит:
Я согласен с этим утверждением, однако я изменяю этот файл, чтобы изменить / построить для сборки / (это будет включать в себя / build и / app / build), поэтому я не получаю все файлы в app / build в моем репозитории.
Также обратите внимание, что если вы импортируете проект из Eclipse, .gitignore не будет скопирован или «автоматически» создан для вас.
источник
Компиляция:
источник
Чтобы обойти импорт всех файлов, где Android Studio игнорирует список «Игнорируемые файлы», но при этом использует Android Studio VCS, я сделал следующее: При этом будет использоваться список «Игнорируемые файлы» из Android Studio (после импорта! Не во время). И избегайте использования громоздкого способа, которым Tortoise SVN устанавливает список svn: ignore.
В дальнейшем «Игнорируемые файлы» будут игнорироваться, и вы по-прежнему сможете управлять VCS из Android Studio.
Ура, Joost
источник
Android Studio 3.5.3
Я использую это для своих библиотек и проектов, и оно охватывает большую часть файлов, которые генерирует Android Studio и другие известные инструменты:
источник
Он создан по ссылке http://gitignore.io/, где вы можете создать последний обновленный файл gitignore для любого проекта. Для Android http://gitignore.io/api/androidstudio . Надеюсь это поможет. В настоящее время я использую Android Studio 3.6.3
источник
Эта официальная документация от службы поддержки JetBrains гласит следующее:
Это также дает другие рекомендации вещей, о которых следует быть осторожными.
источник
.gitignore из библиотеки AndroidRate
источник
https://github.com/github/gitignore - это потрясающая коллекция
Android.gitignore
источник