切换分支时如何恢复相同的数据库?

时间:2013-03-02 07:29:32

标签: mysql git version-control

我对版本控制和数据库有疑问。我的问题是我有一个稳定的分支'b1',现在我创建了另一个分支'b2'并且工作了几天。现在几天后我将切换到之前的'b1'分支。

但我的问题是Mysql数据库仍然拥有与'b2'分支相同的数据库。但是当我离开分支'b1'时,我希望拥有相同的数据库,只有那些表和那些数据。

如何实现这一目标?

2 个答案:

答案 0 :(得分:1)

要自动执行此操作,您需要将所有数据库文件置于版本控制之下。此外,由于数据库服务器不希望在不知情的情况下更改这些文件,因此在切换分支时需要重新启动服务器。当然,如果正在编写数据库,您还需要在每次修改后提交更改(以git为单位)。

如果您需要此类功能,请考虑切换到更适合此类操作的无服务器数据库。例如,SQLite没有单独的服务器进程,并且将所有数据库内容保存在单个文件中。

答案 1 :(得分:1)

假设您正在使用开发快照数据,您可以拥有两个不同的数据库,其中一个数据与b1一起使用,另一个数据库与分支b2一起使用。

在您的分支代码中修改数据库引用,以便在那里引用新数据库。