SVN Вопрос относительно ветвления и ветвления сторонних поставщиков - PullRequest
4 голосов
/ 15 марта 2010

Мы разрабатываем приложение, которое состоит из:

  • база исходного кода, предоставляемая нам партнером нечасто. Это несколько рабочий код, «окончательная» версия чего-либо (и мы получаем его в виде zip-файла). У них есть свой собственный цикл выпуска и отслеживания версий.
  • на основе кода выше мы вносим наши изменения. Это могут быть исправления или разработка новых функций.

До сих пор нам удавалось создать хаос кода, в результате мы хотели бы поместить все это в репозиторий SVN. Я хотел бы спросить вас, что вы считаете лучшей практикой, чтобы это происходило с меньшей болью.

Следующие вещи являются нашими вещами, которые мы считаем важными:

  • Мы хотели бы отслеживать наши исправления / изменения, поскольку мы не можем отправлять исправления назад нашему поставщику программного обеспечения, но мы можем сообщить об ошибке (и они могут или не могут ее исправить). Все, что мы разрабатываем на их коде, остается "внутренним", они не заинтересованы в наших изменениях.
  • Пока мы не получаем новую кодовую базу от поставщика, мы считаем их последнюю версию стабильной, над которой мы работаем. Это может быть далее разветвлено, но в результате всегда получается стабильный транк, сборка выполняется на основе этого «стабильного» транка.
  • Когда поставщик выпускает новую версию, мы хотели бы объединить нашу "стабильную" линию (которая содержит много изменений) с их изменениями, создавая таким образом новую "стабильную" линию.
  • Для каждой развертываемой нами версии (для клиентов) мы сможем позже исправить ошибки только в этой версии для клиентов, которые установили нашу систему с использованием этой конкретной версии
  • Есть больше разработчиков, работающих над базой кода ... (как обычно :)

Большое спасибо за советы.

1 Ответ

6 голосов
/ 15 марта 2010

Книга SVN содержит рекомендации по этому сценарию в разделе Филиалы поставщика .

...