Отказ от ответственности: я никогда не использовал PureCM, но, найдя его, я обнаружил, что это не распределенная модель. Так что я подхожу к своему ответу с этой стороны.
Звучит так, как будто вы, возможно, больше боретесь с тем, как работает распределенный контроль версий. Это одно из фундаментальных отличий между распределенным и нераспределенным управлением исходным кодом (и, на мой взгляд, одним из главных преимуществ, которые оно дает вам).
Поскольку вы не связаны с центральным репозиторием, ваш «живой» код является просто еще одним клоном любого конкретного репозитория. Технически говоря, все клоны, которые вы делаете из любого кода распределенной системы контроля версий, который вы имеете, считаются «ветвью» (которая может быть или не быть похожей на потоки из PureCM, хотя у меня есть ощущение, что они похожи). Тем не менее, если у вас есть центральный репозиторий, из которого извлекают все ваши разработчики, все, что вам нужно сделать, это просто клонировать копию своего кода в любой момент, когда вы собираетесь с ним жить, и это ваша живая «ветка». Таким образом, ваши разработчики продолжают работать с самым последним кодом и сливаются с самым последним, и у вас есть целый репозиторий, представляющий собой только тот код, который вы получили.
Столь длинная история сделана длинной, это просто очередной клон. Это имеет смысл?
В качестве дополнительного примечания / примера того, как мой текущий рабочий процесс идет с одним из моих проектов, мы используем наш «центральный» репозиторий DVCS в качестве места, где идет дополнительный клон. Итак, у нас есть наше основное «приложение», из которого все тянут, и затем у нас есть «app-release-1-1-11» (который включает в себя дату, когда он был запущен). Так что выпущенный код также доступен на центральном репо. Надеюсь, это поможет!