Как лучше всего управлять несколькими зависимыми проектами в Git или Mercurial?

2

У меня есть дюжина проектов Java, которые зависят друг от друга, и я часто делаю изменения, которые пересекают их все. Однако многие из проектов - это библиотеки, которые могут использоваться независимо друг от друга.

Сейчас я использую mercurial subrepos, который хорошо работает, за исключением того, что очень мало сторонних инструментов поддерживают его - трудно настроить инструменты просмотра кода, непрерывную интеграцию и т.д.

Какой лучший способ решить эту ситуацию? Разделить все на отдельные проекты и построить отдельные JAR? Перенести на git и использовать субрепозитории git? Проверьте все на одном репо и примите, что я должен проверить все, чтобы что-либо использовать? Что-то еще?

Теги:
mercurial
project-management

2 ответа

4

Я бы сказал, что лучший способ сделать это - сократить ваши зависимости, чтобы они могли ссылаться как внешние банки. Таким образом, когда вы делаете потенциально разрушающие изменения, вам не обязательно сразу устранять затронутые области. Поскольку они зависят от ранее построенной банки, это позволяет правильно изолировать ваше кодирование. Если вы используете что-то вроде Maven для управления вашими зависимостями, вы также получите возможность более легко отслеживать различные версии ваших фляг.

4

Если подпроекты достаточно автономны, я бы посоветовал их создать в виде отдельных проектов maven с отдельными репозиториями VCS.

Это даст вам модульность, в которой вы нуждаетесь, в паре с рабочим управлением зависимостями.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню