2

Моя команда и я работаем над несколькими проектами, которые в совокупности зависят от некоторых общих библиотек. Эти общие библиотеки в настоящее время проверяются вместе с проектами, используя svn: externals.Должны ли быть установлены внешние зависимости во время разработки?

Вопрос в том, должны ли соединительные линии проектов отслеживать HEAD каждой библиотеки или быть связаны с конкретными версиями?

Библиотеки выпусков очень активно разрабатывается другими компаниями, и иногда проводятся проверки, которые разбивают проекты в зависимости от библиотеки. Это проявляется как красное пятно на нашем CI, даже если мы ничего не изменили. Некоторые люди утверждают, что «вот почему у нас есть сервер CI, поэтому, когда мы отстаем, мы утверждаем, что, когда другие утверждают, мы хотим увидеть, как все интегрируются с изменениями на краю кровотечения».

Может ли кто-нибудь прокомментировать лучшую практику? У меня есть мое мнение, которое я забронирую сейчас.

ответ

4

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

+0

Это делает мой внутренний рефакторинг гремлин криком, но я думаю, что вы правы. :) –

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