Должен ли я поместить базы данных sqlite3 (для проекта RoR) в VCS? - PullRequest
0 голосов
/ 27 марта 2010

Как обычно работают с файлами development.sqlite3 с помощью VCS (в частности, git)?

Если я отправлю этот файл в VCS, он будет объединен с копией другого разработчика?

Или каждый разработчик должен запускать задачу db:migrate каждый раз, когда создается новый файл миграции?

Ответы [ 2 ]

1 голос
/ 29 марта 2010

Наиболее распространенным является игнорирование этого файла. Более того, мы обычно стараемся позволить каждому разработчику использовать любую базу данных, которая поддерживается Rails. Конечно, это не всегда возможно, особенно если в некоторых случаях требуется обходить ActiveRecord. Тем не менее, для большинства простых приложений это может быть достигнуто.

Что мы делаем, это добавляем эти строки в .gitignore среди прочего, что мы игнорируем:

db/*.sqlite3
config/database.yml

Затем мы включаем файл database.yml.example в config, где мы сохраняем рекомендуемый способ настройки базы данных для приложения. Разработчики могут скопировать этот файл в качестве своего database.yml или выбрать другую базу данных.

0 голосов
/ 27 марта 2010

sqlite является файловой базой данных, поэтому, если вы передадите этот файл в VCS, каждый разработчик увидит ту же базу данных, что и вы (не слитый с файлом db других разработчиков, но заменивший их базой данных), и им не нужно запускать какие-либоdb: migrate task.

Но этот файл часто меняется (при каждом сохранении данных), поэтому рекомендуется поместить его в VCS.

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