2016-06-29 8 views
1

В настоящее время я изучаю Rails и создаю приложение для блога. Я не могу окутать голову в миграцию. Я предполагаю, что у меня есть read, что вы можете использовать миграции для добавления столбцов, таблиц в базу данных. Но почему это важно/не может быть достигнуто контролем версий?Миграции против контроля версий

Я ценю любую обратную связь/руководство. Я довольно новичок в рельсах/ActiveRecord и поэтому, пожалуйста, несите меня.

+0

Что именно вы подразумеваете под «контролем версий»? Репозиторий git, конечно же, не обновляет схему базы данных Postgresql. – Thilo

+1

Привет @ Тило, я думаю, меня просто смутили из моей интерпретации чтения. Миграции напрямую связаны с внесением изменений в db, где, поскольку контроль версий полностью разделен и относится к отслеживанию фиксаций при работе с кодом. Теперь я в парке? –

+0

https://teamtreehouse.com/community/difference-between-migration-and-git – Thilo

ответ

1

Миграции работают для баз данных как Git repo для кода. Он отслеживает изменения, внесенные в базу данных во время разработки приложения.

Без миграции вам придется вручную выполнять все изменения на каждом устройстве, которому вы пользуетесь кодом.

+1

Спасибо Андре, я думаю, глупый вопрос и полное недоразумение. Для подтверждения: Migrations = "контроль версий для базы данных" Git = "Контроль версий для кода"? Спасибо, кучка. –

+0

Правильно. Это справедливый вопрос и концепция, которая действительно поможет вам в будущем. –

+0

Ну, «миграции» определяются файлами, которые вы хотите хранить в репозитории исходного кода. Но они также имеют результат (например, таблицы отслеживания), поскольку они применяются к базе данных (что может произойти автоматически во время развертывания, что является большой частью обещания здесь). – Thilo

1

Миграции и контроль версий - это две совершенно разные вещи. Миграции не поддерживают состояния. Миграции - это способ изменения вашей базы данных/модели, и они делают намного больше, чем «добавлять столбцы», как вы сказали.

Перед началом работы всем следует ознакомиться с rails guides.

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

Смежные вопросы