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