Как мне настроить мои проекты MAVEN в SCM? - PullRequest
0 голосов
/ 01 февраля 2012

Должен ли я зафиксировать ВСЮ кодовую базу, а также POM и попросить пользователей проверять проекты по одному для нескольких проектов maven, один из которых содержит несколько модулей?

Должен ли я ТОЛЬКО фиксировать POM и настраивать информацию SCM в каждом POM?

Как работает фиксация / извлечение при настройке подключаемого модуля SCM maven? Сохраняете ли вы POM с помощью subversion, проверяете их, а затем материализуете POM, чтобы maven загружал остальные соответствующие файлы в этот проект? Что если вам нужно было добавить новые файлы, но вы использовали SCM через maven?

Я очень озадачен разницей между хранением файлов с использованием svn (стандартным способом) и хранением информации SCM для каждого отдельного человека. Кажется, нет абсолютно НИЧЕГО для документации о том, как использовать Maven и загружать его информацией SCM.

Лучше ли хранить информацию SCM непосредственно внутри POM, или, как я уже говорил, я должен просто добавить в SVN целые проекты, включая их соответствующие POM?

Или лучше встроить информацию о СКМ непосредственно в maven и сделать так, чтобы maven материализовал указанный проект? Плагин Maven SCM хорошо работает с subclipse? Например - после того, как вы «материализовали» проект из POM Maven, он импортирует файлы проекта из SVN, а затем показывает их в затмении, как при управлении версиями? Если бы я встраивал информацию SCM в maven POM, я бы тогда просто создал отдельное репозиторий SVN ТОЛЬКО для моих файлов pom? Или я бы просто положил все файлы POM прямо в ствол моего инженерного репо?

Надеюсь, кто-нибудь поможет мне прояснить это. Я очень смущен. Спасибо!

1 Ответ

2 голосов
/ 01 февраля 2012

Всегда фиксируйте весь ваш исходный код в SCM.В противном случае у вас нет истории вашего исходного кода.

Также зафиксируйте ваш pom в SCM, в противном случае у вас нет истории того, как он должен быть построен.Такая история крайне важна для возможности сборки старых веток вашего программного обеспечения, и, поскольку сборка и исходный код очень тесно связаны, рекомендуется поместить файл pom.xml в тот же репозиторий, что и ваш исходный код.

Чтобы упростить другие инструменты maven, вы можете упомянуть свой SCM в pom.xml.Это необязательно, но я настоятельно рекомендую вам сделать это.Это позволяет системам CI проверять, является ли их копия исходного кода самой последней, и дает им конфигурацию, необходимую для извлечения новой копии, если это необходимо.

Я не знаю ни одного инструмента или плагина, который действительно проверяет код для вас.Если вы не зарегистрируете свой исходный код, тогда все другие инструменты будут проверять простой файл pom.xml (потому что это все, что есть в SCM), а ссылка на SCM не сможет никому рассказать, где находится источниккод есть (потому что его нет в SCM).

...