2010-07-04 2 views
3

Я разрабатываю приложение, которое должно работать как на Android, так и на обычном Java SE.Eclipse: как игнорировать .git subdir при добавлении одного проекта в другой путь сборки проекта?

У меня есть проект затмения под названием foobar-core который содержит код, который используется как для Android, так и для SE-версии. У меня есть еще один проект под названием foobar-android, который содержит все специфичные для Android коды.

мне нужно ссылаться на некоторые из Foobar-ядра кода в Foobar-андроида проекта, поэтому я добавил Foobar-ядро для Foobar-андроида в Настройки -> Java Build Path -> Проекты -> Необходимые проекты на пути сборки. Это прекрасно работает, так как я могу использовать код от foobare-core в foobar-android сейчас.

Вот проблема: Оба Foobar-жильный и Foobar-андроида являются независимыми Git репозиториев, что означает, что они оба имеют .git подкаталог. Теперь я получаю много предупреждений на вкладке «Консоль» всякий раз, когда компилирую foobar-android. Они выглядят так:

/foobar-core/src/.git/HEAD conflicts with another file already put at .git/HEAD 
/foobar-core/src/.git/config conflicts with another file already put at .git/config 
/foobar-core/src/.git/description conflicts with another file already put at > .git/description 
/foobar-core/src/.git/hooks/applypatch-msg.sample conflicts with another file already > put at .git/hooks/applypatch-msg.sample 

Как я могу сказать, Eclipse, игнорировать .git файлы при импорте источников из Foobar-основного проекта?

ответ

2

Даже если у вас есть только одно git-репо, хорошо игнорировать каталог .git, потому что другой Eclipse будет тратить много времени на просмотр файлов в нем, даже если ему ничего не нужно делать с ними. В частности, когда вы выполняете широкомасштабный поиск по проекту, Eclipse будет искать все файлы в каталоге .git, что занимает много времени и заканчивается тем, что вы видите много дубликатов (или почти дубликатов, более старые версии одного и того же файла с найден один и тот же поисковый запрос).

Я думаю, что расширения Eclipse git, вероятно, позаботятся об этом, но если вы не хотите устанавливать еще одно расширение, лучшим способом я нашел его, чтобы сообщить Eclipse, что все .git-каталоги являются «производными», что кажется чтобы Eclipse несколько игнорировал содержащиеся файлы.

Вы делаете это, переключаясь из представления «Проводник пакетов» в представление «Навигатор», где вы должны увидеть папку .git. Щелкните правой кнопкой мыши по папке .git, выберите свойства, выберите «Ресурс» из селектора параметров, а затем установите флажок «Производный».

+0

Спасибо, это на самом деле отвечает на вопрос, в отличие от «ответа» выше, который предлагает использовать .gitignore. –

+0

Да, я получил удовольствие от этого «ответа» :) – barrycburton

1

Я бы установил файл .gitignore, который просто проигнорировал весь проект foobar-code.

+2

Возможно, мое объяснение проблемы было недостаточно. Ошибка при выполнении git, но когда я * скомпилирую * проект в Eclipse. Это то, что я получаю: http://i.imgur.com/PuCbH.png – rodion

+0

@rodion: Это интересно, я все равно попытаюсь выполнить файл gitignore. –

+2

Ха-ха! Джош К, ты веселый! – barrycburton

Смежные вопросы