2

Git は優れたツールです。以前のバージョンのいずれかに切り替えて、履歴を分割してバグを見つけることができます。

しかし、実際にはできませんでした。古いリリースに切り替えると、DB は最新の状態のままになり、Web アプリはまったく機能しなくなります。

それを回避する方法に関する一般的な解決策はありますか?

いくつかの考え:

  • すべてのコミットに DB 全体を追加することはできません
  • バック マイグレーションでデータが失われるため、バック アンド フォワード マイグレーションを使用できません。データは構造の一部ではありませんが、デバッグには便利です。
  • そしてもちろん、Git と同期するために何か (フック?) が必要です。
4

2 に答える 2

1

最もクリーンな解決策は、ダミー/テストデータを使用してデータベースを作成するスクリプトを作成することです。このスクリプトとデータベース構造はバージョン管理されるため、常に正しいスクリプトが作成されます。

ただし、現在のコミット後に発生する構造変更に関する情報が利用できないため、バックマイグレーションを自動的に実行することはできません。

于 2012-05-17T09:31:41.403 に答える
1

このツールを試してください

https://hub.docker.com/r/arelis/gitdb

これは mysql のバージョン管理であり、バージョン管理には git を使用します

于 2021-08-26T16:17:24.557 に答える