да
И, кроме того, вам нужны ветви .
Я использую Git для веток:
для разработки для каждой функции (как мы делаем для обычной разработки остальной части приложения)
и один для производственного сервера, потому что клиенты, использующие приложение, тоже создают контент.
Таким образом, вы получаете преимущества от контроля исходного кода и ветвления как для исходного кода, так и для базы данных (и любых других файлов, которые у вас есть).
Я еще не нашел систему «все в одном» [для PostgreSQL], поэтому мне пришлось писать функции / сценарии для правильного переиндексации при объединении ветвей (например, любой индекс из производственной ветви не должен изменяться, поскольку клиенты полагаются на них, тогда как Индексы + внешние ключи из ветви разработки, которые пересекаются с производственным содержимым, должны быть переиндексированы: он не будет работать для всех приложений, но он охватывает все случаи нашего приложения, поэтому он достаточно хорош).
Но общая идея заключается в том, что содержимое базы данных является неотъемлемой частью приложения, и все ресурсы должны находиться под контролем исходного кода , так что да, вам также следует использовать контроль исходного кода для базы данных.