Github Flow за 5 минут.
1. Создал ветку для фичи/фикса
2. Сделал в ветку несколько коммитов
3. Отправил пулл риквест
4. Обсудил с коллегами пулл риквест и при необходимости внес правки
5. Прогнал ветку через тесты.
6. Влил в master
7. Выкатил master на продакшн
Если фича ветка долго не мержится и начинает расходиться с master веткой, то вливаем master в фичу ветку и продолжаем.
Если кто-то из команды хочет руками потестить новую фичу, то может сделать
git checkout -b new-feature origin/new-feature
И потестить руками локально на своей дев машине.
Update: Если sql база, то пишут миграции. Можно посмотреть в любом фреймворке что это и как использовать. После каждого git pull пробуем накатить миграции через консоль (можно хук для гита написать) и если есть новые миграции, то они применятся к локальной базе. Если nosql база типа mongo, то ничего не надо, они schemaless.
На продакшине, вытягиваем код из гита в отдельную директорию. Применяем миграции к базе, затем симлинк переключаем с директории со старой версией проекта на директорию с новой версией проекта. Если миграции ломают старую версию проекта, то предварительно нужно выключить проект, чтобы у пользователей не сыпались всякие непойманные исключения. Это вкратце, для всего этого нужно подобрать себе уже готовый инструмент деплоя, который это все автоматически будет делать.