Затмение Android и гитиньор


188

Какие файлы / папки можно безопасно игнорировать для включения в git?

Я скопировал хороший проект, удалил папки gen и bin и попытался запустить приложение. Окно запуска Android говорит: «Ваш проект содержит ошибки, пожалуйста, исправьте их перед запуском приложения. На значке слева от проекта в проводнике пакетов есть красный крестик. Пока папка gen не существует в Проводник Windows, это делает в проводнике пакетов.


1
Выполните «обновление» проекта (щелкните правой кнопкой мыши на проекте / обновлении) или через Меню> Проект> Очистить проект .. - это может помочь вам избавиться от сообщений об ошибках в Eclipse. Иногда, к сожалению, помогает только перезапуск Eclipse. Затмение не очень надежно, но хороший бесплатный инструмент для начала. (Я уже переключился на IntelliJ IDEA. Гораздо лучше, но не бесплатно.)
Матиас Конрадт

1
@Mathias Lin: есть новая бесплатная версия IntelliJ IDEA для сообщества .
Грег Хьюгилл

@Greg Hewgill: да, но в версии сообщества нет встроенной поддержки Android.
Матиас Конрадт

2
@MathiasLin intellij IDEA10: бесплатная IDE для разработки под Android | Блог JetBrains IntelliJ IDEA Я знаю, что это было пару лет назад, но я наткнулся на эту статью и заметил устаревшую информацию, поэтому я подумал, что добавлю (теперь старые) новости. IntelliJ IDEA Community Edition теперь предлагает поддержку разработки Android. Объявление было опубликовано 19 октября 2010 года. Через несколько месяцев после вашего комментария.
DavidDraughn

@DavidDraughn Да, использую IDEA уже 2 года, также могу рекомендовать его.
Матиас Конрадт

Ответы:


261

Есть типы файлов, которые нужно игнорировать

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

Из Gitignore на GitHub


17
Фактически это было обновлено на GitHub, оно также включает, помимо прочего .project, я не согласен здесь и хочу ваше мнение. Сценарий: я добавил новые классы в свой проект. Когда я вытащил с другой машины, их не было в проекте. Пожалуйста, проверьте это: github.com/github/gitignore/blob/master/Global/…
Даниэль

16
Я согласен с тобой @Daniel. Я считаю, что некорректно (как предлагается в файле .gitignore, на который вы ссылаетесь на GitHub) исключить .project, .classpathи .settings. Это часть настройки проекта, которую вы бы хотели записать в git.
мгд


33

Что я обычно добавляю к .gitignore:

bin
gen

binи genпостоянно изменяются при кодировании, поэтому нет необходимости включать их в репозиторий Git. Кроме того , иногда я добавляю .classpathи .projectкоторые являются определенные файлы Eclipse, потому что , возможно , я хочу , чтобы создать новый Android проект на основе этих же источников, но в другой ОС или IDE.

Что касается ошибки, я бы очистил проект и / или попытался запустить утилиту Fix Project Properties (щелкните правой кнопкой мыши Project -> Android Tools -> Fix Project Properties).


Как на самом деле определить и исправить ошибку? Зачем чистить проект, если он еще не скомпилирован?
Джастин Бьюзер


7

Можно без проблем игнорировать bin и gen. Когда у меня возникают проблемы с настройкой проекта, я делаю это: во-первых - вы смотрели вкладку «Проблемы» в представлении под представлением редактора - она ​​обычно дает более подробную информацию об ошибках проекта. Если там нет ничего убедительного, я делаю вещи ниже:

  1. Как правило, когда у меня возникают проблемы с Eclipse, приводящим к фантомным ошибкам в проекте, очистка проекта исправит это. Это в меню, под Project> Clean.
  2. Если это не сработает, я обычно пытаюсь щелкнуть правой кнопкой мыши по проекту, перейдя в Инструменты Android> Исправить свойства проекта.
  3. Мое последнее средство - перезапустить Eclipse и удалить папку gen.

2

лучший способ - использовать этот сайт для генерации: http://www.gitignore.io/


Это просто повторяет то, что говорит предыдущий ответ.

-28

Простой ответ на этот вопрос - *. *, В принципе, совершенно безопасно игнорировать все, что вы не хотите добавлять в систему контроля версий. Это, как говорится, действительно зависит от того, что вы хотите достичь с помощью Git. Если вы хотите иметь возможность извлекать / импортировать свой проект в другом месте из того же репозитория, то вам лучше всего игнорировать / bin / . и / gen / . Я бы не стал игнорировать сами папки (например, / bin, / gen) только ради поддержания правильной структуры каталогов для вашего проекта.

Это отвечает на первоначальный вопрос, но не связано с проблемой, с которой вы столкнулись. Что касается решения проблемы, с которой вы сталкиваетесь, вам придется разместить больше информации, в частности, что указано на вкладке Проблемы. Если вы нигде не видите вкладку «Проблемы», нажмите меню «Окно», затем откройте окно «Вид», затем выберите проблемы, если они есть, или нажмите «Другие», чтобы найти их в разделе «Общие».


3
Это совершенно неправильно! Это заставит git игнорировать ВСЕ ваши файлы
контрольный список

1
@checklist Вы не читали вопрос? Или ты не понял мою точку зрения? Он спросил: «Какие файлы / папки можно безопасно игнорировать для включения в git?», Ответ на который ЛЮБ из них. Откуда вы знаете, что он не хочет временно игнорировать все, пока решает проблему со сборкой?
Джастин Бузер

1
@JustinBuser, который просто кажется бессмысленным, педантичным семантическим спором. Я не думаю, что созданный вами искусственный контекст имеет какое-либо отношение к сообщаемому вопросу. Вы, кажется, умышленно неверно истолковали ОП.
Бакар
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.