2008-10-16 4 views
3

В настоящее время я использую subversion для управления своим исходным кодом, и я пришел к тому моменту, когда мне нужно составить программное обеспечение, над которым я работаю для клиента. Все брендинг обрабатывается в ресурсах проекта, поэтому изменение взгляда на клиента очень просто. У меня возникла проблема с сохранением фирменной версии программного обеспечения в исходном репозитории. Сейчас это отдельная ветка, но при попытке слияния изменений с соединительной линии на фирменную ветку она с радостью перезаписывает файл с фирменным ресурсом.Управление фирменным программным обеспечением в управлении версиями

Что было бы хорошим способом сохранить эти различия, но все же можно было легко проверить все, что вам нужно, чтобы создать выпуск для сборки соединительной линии или сборки с помощью настраиваемого файла ресурсов?

ответ

0

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

+0

на самом деле он делает: «в настоящее время использует подрывную деятельность» – warren 2008-10-16 01:37:08

1

Вы можете сделать фирменный релакс отдельным репо, использующим ванильную ветку как внешний.

Альтернативой было бы сохранить все в одной ветке и выполнить процесс сборки, чтобы выбрать, какие файлы для конкретных брендов использовать.

1

Вам необходимо сохранить брендинг в качестве обертки вокруг базовой технологии, так как каждый другой проект, который я знаю, делает это.

Однако, если вы не думали о проекте, подобном этому, с самого начала вам может понадобиться неделя или две, чтобы реорганизовать все.

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

0

Ну, вы можете использовать наборы слияния, где вы просто объедините ряд коммитов, или вы можете сохранить сохраненные файлы ресурсов в отдельном каталоге в корне ветки (ов)? Затем при слиянии просто выберите каталоги в корне, исключая брендинг.

Мне нравится слияние только целого ряда коммитов, так как это позволяет избежать новых работ на ветвях. Но если вам нужно объединить все, вы можете переместить свой проект в подкаталог (например: «Источник») и брендинг во второй подкаталог. Затем в Eclipse или что угодно, вы можете просто объединиться из магистрали/источника в ветвь/источник.

например.:

это:
/СВН/Рго/багажник/а
/СВН/Рго/багажник/б
/СВН/Рго/багажник/с
/СВН/Рго/багажник/D/E/е/брендинг

становится этим:
/SVN/проектируемый/багажник/источник/а
/СВН/проектируемый/ствол/источник/б
/СВН/проектируемый/багажник/источник/с

/СВН/Рго/филиал/брендинг
/СВН/Рго/филиал/источник/а
/СВН/Рго/филиал/источник/б
/СВН/Рго/филиал/источник/с

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