Наша распределенная команда (3 внутренних разработчика и более 3 внешних разработчиков) использует SVN для управления нашей кодовой базой для веб-сайта. У нас есть ветка для каждой минорной версии (4.1.0, 4.1.1, 4.1.2 и т. Д.). У нас есть транк, в который мы объединяем каждую версию, когда делаем релиз и публикуем его на нашем сайте.
Пример проблемы, с которой мы сталкиваемся:
Добавлена новая функция, назовите ее «Возможность создать проект» в 4.1.1.
Еще одна функция, которая зависит от той, что в 4.1.1, должна появиться в 4.1.2, которая называется «Возможность добавлять задачи в проекты».
Итак, в понедельник мы говорим, что 4.1.1 «закрыт» и нуждается в проверке. На этом этапе наши удаленные разработчики обычно начинают работать над функциями / билетами для 4.1.2. В течение недели мы будем тестировать 4.1.1, исправлять ошибки и фиксировать их обратно в 4.1.1. Затем, в пятницу или около того, мы помечаем 4.1.1, объединяем его с транком и, наконец, объединяем его с 4.1.2. Но в течение 4-5 дней, которые мы тестируем, 4.1.2 не имеет кода из 4.1.1, от которого зависят некоторые новые функции для 4.1.2.
Таким образом, разработчик, который добавляет функцию «Возможность добавлять задачи в проекты», не имеет возможности «Возможность создания проекта» и должен выполнить некоторые операции копирования файлов, чтобы иметь возможность сохранить работая над этим.
Что мы можем / должны сделать, чтобы сгладить этот процесс?
P.S. Извиняюсь, если этот вопрос задавался раньше - я выполнил поиск, но не смог найти то, что искал.