Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Bitrix module for migrations

License

NotificationsYou must be signed in to change notification settings

worksolutions/bitrix-reduce-migrations

Repository files navigation

Модуль миграций для CMS "1С-Битрикс" – быстрые и стабильные обновления баз данных проекта.

Известно, что с развитием проекта изменению подлежат не только исходный код и алгоритмы бизнес логики, но так же добавляются или удаляются новые сущности или их поля. Для упрощения изменений и последующих обновлений данных и предназначен данный модуль.

Возможности

  • Составление сценариев миграций с помощью специальныхбилдеров, специально предназначенных для этих нужд. Таким образом создание новых сущностей данных будет происходить не труднее чем через административный интерфейс;
  • Актуализация данных. Бавают случаи когда данные нужно "подправить" не меняя структуры - миграции подходят для этого как нельзя кстати. Сценарий будет запущен один раз и для всех площадок;
  • Работа через командную строку. Обновление можно выполнять как вместе с обновлением исходного кода, так и использовать специальные инструменты систем версионирования - запуска скриптов после обновления.

Преимущества

  • Стабильность. Сценарии миграций данных составляются и отлаживаются командой.
  • Удобство. Модуль обладает широким спектром функционала для манипулирования миграциями.
  • Информативность. Удобный вывод списков миграций при работе через консоль.
  • Предсказуемость. Можно указывать примерное время выполнения миграций – это будет спобоствовать правильному принятию решения при обновлении.

Как это работает?

Простейшая схема работы команды над проектом выглядит следующим образом:

Схема работы над проектом

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

Процесс изменения схемы данных (либо манипуляции над данными) которые нужны для каждой площадки следующий:

  1. Необходимо сделать изменения в схеме данных на проекте. К примеру добавить поле в одну из сущностей, которое будет использоваться новой функцией.
  2. Разработчик создает миграцию добавления нового поля. Миграцией будет являться файл (класс php), определенного формата, в котором необходимо написать сценарии обновления (добавления поля) и отката (удаления поля) на случай неудачного применения обновления или отката версии проекта на предыдущую.
  3. Запускает миграцию на локальной копии проекта, отлаживает применение и откат миграции.
  4. Регистрирует миграцию в системе версионирования. Так исходный код для запуска миграции распространится по всем платформам.
  5. Каждая площадка получившая исменения исходного кода запускает обновления миграций.

Таким образом новое поле в базу данных добавляется для всех площадок получивших изменения одинаковым образом.

Что дальше?

About

Bitrix module for migrations

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors8

Languages


[8]ページ先頭

©2009-2025 Movatter.jp