Нужно ли использовать git для отслеживания файлов базы данных и переноса сценариев?
Я изучаю Flask, читая удивительный урок Мигеля Гринберга. В этой главе он говорил об использовании расширения Flask-Migrate, чтобы справиться с изменениями схемы базы данных. Он сказал, что сценарии миграции необходимо добавить в систему контроля версий, но как насчет самого файла базы данных? Должен ли он быть добавлен к .gitignore
файл или нет? Зачем?
Спасибо!
1 ответ
Как правило, вы не хотите хранить базу данных в системе контроля версий. Если вы используете Flask-SQLAlchemy в соответствии с предложением Мигеля, есть способы обеспечить создание базы данных, если она не существует. Однако данные, очевидно, не будут сохранены.
Поэтому, если вы решите, что не хотите хранить файл базы данных в git, используйте его, чтобы добавить его в .gitignore
файл, чтобы убедиться, что он не был случайно добавлен в систему контроля версий.
Примером того, почему вы не хотите этого делать, может быть, если у вас есть сайт, на котором работает много пользователей. Пользователи ввели и сохранили свои данные в вашей базе данных через приложение фляги. Обычно для производственных приложений база данных размещается как отдельное работающее приложение, поэтому даже не будет храниться вместе с вашим кодом. Причина заключается в том, что при разработке флеш-приложений таким способом очень легко использовать встроенный Python SQLLite. Он не требует никаких дополнительных программ для запуска или настройки и облегчает разработку. Используя что-то SQL Alchemy, вы можете изменить базы данных SQL, например, на postgresql в рабочей среде или на то, что вам больше подходит. Flask-Migrate (созданный Miguel) - отличная библиотека для миграции баз данных в составе Flask.