Я знаком с структурой классического/туловища/ветвей/тегов для репо SVN, но, похоже, очень мало советов о том, как структурировать репо внутри этого, особенно ветвей ,Как структурировать SVN-репо в каталоге филиалов
Скажем, верхний уровень моего исходного дерева - это проект под названием P. Багажная часть репо проста - это просто багажник/P, потому что есть только один багажник.
Для тегов, я могу структурировать их в соответствии с номером версии, так что я бы
tags/v3/v3.2/v3.2.7/P
tags/v3/v3.3/v3.3.1/P
и т.д. и т.п.
Для отраслей, это сложнее. Обычно у меня есть ветвь «последняя стабильная v3.2», но также может иметь активные ветви функций для 3.2. Конечно, у меня также есть ветви функций для туловища, и, похоже, имеет смысл держать их отдельно от ветвей функций для других версий. Таким образом, один вариант для структуры репо будет:
branches/3.2/stable/P
branches/3.2/feature1/P
branches/trunk/feature2/P
Это кажется немного странным, чтобы иметь папку под названием ствол внутри отрасли, хотя.
Я думаю, многие люди скажут, что никогда не следует делать какие-либо разработки, достаточно значимые, чтобы требовать ветку, если эта ветка не находится непосредственно от ствола. В этом случае единственными ветвями были бы ветви признаков, и все теги были бы также из туловища. К сожалению, у меня нет такой роскоши, потому что я должен поддерживать несколько старых версий для клиентов, которые (по тем или иным причинам) не могут обновиться до самых последних.