Читая статью в википедии о контроле версий, я обнаружил некоторые термины, которые кажутся неоднозначно заданными, и мне было интересно, как они на самом деле используются / применяются в реальном мире. В частности:
- "Магистраль" против "Базовой линии"
- "Ветвь" против "Стрима"
- «Оформить заказ» против «Обновления»
- Папка "Vendor" против репозитория артефактов (например, Maven или Ivy)
Я изучаю контекст, поэтому любые конкретные примеры, которые вы могли бы привести, помогли бы лампочкам включиться намного лучше.
Что касается последнего, я имею в виду следующее:
По крайней мере, в svn
достаточно стандартно иметь структуру проекта VC:
svnrepo/
someProject/
trunk/
branches/
tags/
vendor/
Где vendor/
- это место для размещения внешних / сторонних зависимостей, на которые опираются ваши конфигурации. В качестве альтернативы я видел, как разработчики используют такие инструменты, как Maven или Apache Ivy, для извлечения / публикации артефактов (JAR и т. Д.) В / из хранилища, такого как SFTP-сервер. Итак, когда вы помещаете сторонние зависимости в SCM под vendor/
, и когда вы помещаете эти зависимости в репозиторий Maven / Ivy?
Заранее благодарим за разъяснения по любому из этих пунктов!