Рабочий процесс: хранилище SVN, извлечение и содержание - PullRequest
0 голосов
/ 02 февраля 2011

У нас есть проблема рабочего процесса в отношении синхронизации контента и кода. Наша проблема в том, что мы не знаем точно, какой из подходов лучше всего подходит для управления содержимым веб-сайта и его разработки кода.

У нас следующая ситуация:

  1. Разработчик 1 проверяет код. Разрабатывает некоторый внутренний код, НО также вносит изменения в (HIS LOCAL) базу данных. Изменения относятся к структуре базы данных и ее содержимому.
  2. Разработчик 2 добавляет некоторое содержимое веб-сайта в базу данных (HIS LOCAL) (например, новости или другое содержимое). Он также модифицирует некоторый интерфейсный код. Без изменений в структуре базы данных.
  3. Разработчик 3 добавляет некоторый интерфейсный код. Нет изменений в базе данных.
  4. Редактор контента добавляет некоторый контент в базу данных (HIS LOCAL). Без изменений в структуре базы данных.

Это происходит все одновременно. Момент замораживания на самом деле не существует.

Каков наилучший подход к управлению этим рабочим процессом? Как мы можем оптимально использовать SVN и рекомендуется ли централизованная база данных?

1 Ответ

0 голосов
/ 17 марта 2011

Личное мнение здесь.

Вам необходимо сохранить два набора файлов, описывающих схему вашей базы данных.

Первый - это файл / скрипт sql, который создает базу данных с нуля до текущей спецификации.

Второй - это серия файлов или сценариев SQL, которые вносят постепенные изменения.

Каждый раз, когда происходит структурное изменение базы данных, разработчик обновляет / восстанавливает основную схему и записывает скрипт / инкрементный файл, который проверяет, применены ли изменения (проверяет наличие нового столбца или таблицы) и если нет, выполняет необходимые операции для обновления схемы. Это должно относиться только к тем изменениям, которые внес разработчик.

Затем, когда ваши другие разработчики проверяют и выполняют локальные установки, шаг установки должен выполнить ВСЕ шаги инкрементного обновления при обновлении по порядку. Это означает, что вы должны быть в состоянии безопасно применять последовательные обновления, которые могут дополнять друг друга. Если вы делаете чистую установку, вы просто генерируете базу данных из полного файла.

...