Здравствуйте, Рома Мик, Вы писали:
РМ>Я не веб-программист, но понемногу приходится этим заниматься. Есть сайт на drupal, это не так уж важно, но друпал — довольно большой сам по себе,
Как мне рассказывал один знакомец:
Терминология:
сайт — исходники + БД в настроенном виде
продакшен — сайт на сервере, то что доступно публично
тест environment — нечто у девелопера на машине. Часто присвоить версию не представляется возможным, т.к. часто берутся только части проекта.
svn — сорцконтрол
Workflow примерно такой:
1. Очень общо, в сорцконтроле исходники организованы так:
\VerXXX
Dev\ — девелоперская версия, то, над чем ведется работа и то куда делается чекин
Prod\ — сюда мерджится код из Dev когда пройдено тестирование.
2. На сервере работает скриптик, который при появлении изменений в \VerXXX\Prod обновляет сайт. Т.о. когда определенный набор фич создан и протестирован, манагер или тим лид мерджит из Dev в Prod, после чего проект обновляется скриптом. Понятно что там при необходимости обновление БД было, но это уже детали.
3. При обновлении структуры базы, а далее раз в неделю — делается выгрузка базы на сервер. Девелопер берет ее просто копированием. Взяв последнюю версию исходников он должен влить еще и выгрузку базы, чтобы синхронизироваться с изменениями базы.
Вобщем, по кругу: (имплементация -> (тестирование -> багфикс -> чекин в Dev) x N) x K -> мердж в Prod) x Ver
Таким образом копируются только изменения и всегда при появлении каких-то критикал багов в свежем проде можно вернуться к прошлой версии, опять же без аврала. У них так была работа построена со всеми проектами.
Если руки золотые, не важно из какого места они растут.