Какие файлы проектов NetBeans должны входить в исходный контроль?
Обычно мы используем Eclipse для конкретного Java-проекта, но недавно я импортировал проект в NetBeans, чтобы использовать его функции построения диалога.
Поскольку я, вероятно, вернусь к этому, я хотел сохранить файлы проекта NetBeans в контроле версий. Однако я не хочу фиксировать файлы, которые являются "моими" и "проектами", то есть файлы с моими собственными настройками, которые конфликтуют с другим пользователем.
NetBeans создала следующую структуру в области проекта верхнего уровня:
nbbuild
nb-build.xml
nbproject
<various files>
configs
private
Ясно, что nbbuild
- это вывод сборки, поэтому он не войдет. Файл nb-build.xml
кажется вероятным, как и большинство из nbproject
. Однако nbproject/private
предлагает это "мое". Подглядывание в "configs", мне не ясно, если это моя или проект...
У кого-нибудь есть рекомендации?
Ответы
Ответ 1
В статье базы знаний NetBeans, посвященной файлам проекта и управлению версиями, обсуждаются файлы проекта NetBeans, а также дается бесплатный совет о том, какие файлы относятся к конкретному проекту (т.е. Могут использоваться совместно с контролем версий), а какие - к конкретному пользователю.
Вот раздел по управлению версиями:
Если проект извлечен из системы управления версиями, в эту систему управления версиями не следует nbproject/private
папки build
(или nbbuild
), dist
(или nbdist
) и nbproject/private
.
Если проект находится в системах управления версиями CVS, Subversion или Mercurial, соответствующие файлы "игнорировать" создаются или обновляются для этих каталогов при импорте проекта.
Хотя nbproject/private
следует игнорировать, nbproject
должен быть зарегистрирован в системе контроля версий. nbproject
содержит метаданные проекта, которые позволяют другим пользователям открывать проект в NetBeans без предварительного импорта проекта.
Ответ 2
Оказывается, и Томас, и Петкардона в некотором роде правильны. NetBeans рекомендует импортировать только исходный код и/или документацию. Ох и папка nbproject, но не папки * nbproject/private **.
Из статьи базы знаний NetBeans по импорту проектов Eclipse:
Вопросы контроля версий
Если проект вычеркнут из система управления версиями, сборка (или nbbuild), dist (или nbdist) и nbproject/private folders не следует проверять в этом управлении версиями система.
Если проект находится под CVS, Subversion или Mercurial версия систем управления, соответствующих "игнорировать" файлы создаются или обновляются для этих каталогов, когда проект импортируется.
Хотя nbproject/private должен быть игнорируется, nbproject должен быть проверен в систему контроля версий. nbproject содержит метаданные проекта, которые позволяют другим пользователям открывать проекта в NetBeans без необходимости сначала импортируйте проект.
Ответ 3
Отсутствует.
В репозиторий должны быть проверены только исходные файлы, сценарии сборки и документация, которые не генерируются автоматически (например, - вывод таких инструментов, как JavaDoc и Doxygen). Такие вещи, как файлы проекта, двоичные файлы и сгенерированная документация, не должны быть проверены.
Причина двоякая. Во-первых, вы не хотите перезаписывать другие настройки проекта разработчика самостоятельно. Во-вторых, другие разработчики могут не использовать те же IDE, что и вы (или даже IDE вообще), поэтому не предоставляйте их больше, чем их нужно строить (проект или связанная с ним документация) или запускать проект.
Ответ 4
Как было протестировано с Netbeans 6.8, только репозиторий project.xml
, configurations.xml
и основной файл makefile (настраиваемый в родительском каталоге dir директории 'nbproject'
с предварительными/конечными определениями) должны быть распределены через репозиторий, Все остальные файлы будут автоматически (повторно) созданы Netbeans (Makefile-impl.ml
, Makefile-variables.ml
, все Makefile-$CONF
, Package-$CONF.bash
). Параметр 'private' также должен быть проигнорирован.
Ответ 5
Вы также можете проверить
https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore
Этот проект с открытым исходным кодом содержит
Коллекция полезных шаблонов .gitignore