#java #eclipse #git #gitignore
Я пользуюсь Eclipse и Egit для работы с Git. Каждый раз, когда я делаю коммит, мне предлагается выбрать из файлов которые нужно закоммитить. Часть файлов уже выбраны, а часть нет. Из выбранных файлов мне Eclipse обычно предлагает закоммитить все измененные java файлы а также некоторые class файлы и некоторые другие. Насколько я понимаю class файлы генерируются автоматически и по идее их коммитить не обязательно так же как и jar файлы. Но Eclipse мне регулярно предлагает их включать в коммит. Подскажите как поступать в этом случае? Надо ли включать в коммит файлы с расширением class, jar и другие?
Ответы
Ответ 1
Если для соответствующего class файла у вас есть java файл, то включать class файл нет никакого смысла. Другое дело, что иногда у Вас есть только class файл, тогда наверное его стоит включить. Аналогично и с jar файлами. Если этот jar - продукт компиляции Вашего кода - нет смысла его включать. Если это сторонняя библиотека - возможно есть, а может проще просто правильно настроить maven/gradle, что бы он сам все умел вытянуть. Что бы git не предлагал включать ненужные файлы, их нужно добавить в список исключений - в файл .gitignore. В целом, в коммиты нужно включать то, что нужно для компиляции. Сторонний человек должен спулить репозиторий, открыть его в эклипсе и просто нажать "скомпилируй".Ответ 2
Предложенный KoVadim инструмент для генерации .gitignore-файлов gitignore.io предлагает следующий файл для сочетания [java]+[eclipse]: # Created by https://www.gitignore.io ### Java ### *.class # Mobile Tools for Java (J2ME) .mtj.tmp/ # Package Files # *.jar *.war *.ear # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* ### Eclipse ### *.pydevproject .metadata .gradle bin/ tmp/ *.tmp *.bak *.swp *~.nib local.properties .settings/ .loadpath # Eclipse Core .project # External tool builders .externalToolBuilders/ # Locally stored "Eclipse launch configurations" *.launch # CDT-specific .cproject # JDT-specific (Eclipse Java Development Tools) .classpath # PDT-specific .buildpath # sbteclipse plugin .target # TeXlipse plugin .texlipse
Комментариев нет:
Отправить комментарий