Мой ответ отражает мой опыт, а не какую-либо «общую правду» (что бы это ни было).
В проекте, над которым я сейчас работаю, нет выделенной ветви / тега для прототипирования или реализации.Код прототипа имеет свою собственную папку (например, research
), а реализацию - свою собственную папку (dev
), и они оба являются частью соединительной линии.
Что касается нашей системы контроля версий (svn), нет разницы между «веткой» и «тегом» - разница просто концептуальная или, другими словами, «как вы думаете об этом».
Следуя определению ветки из svn документации :
линия развития, которая существует независимо от другой линии, но все еще имеет общую историю, есливы заглядываете достаточно далеко назад во времени
Я не вижу, как прототипирование / реализация подпадают под это определение, поскольку они не являются двумя независимыми линиями развития.столько, сколько я могу, в основном, потому что я не хочу рассчитывать на систему контроля версий, чтобы сделать слияние ветви правильно.
РЕДАКТИРОВАТЬ: Конечно, приведенное выше определение ни в коем случае не «определение», это скорее предложенная концепция.Если вы уверены, что ветвление - это рабочий процесс, от которого ваш проект извлечет наибольшую выгоду - это достаточно веская причина для его использования, даже если оно не соответствует ни одному определению, ни другому.