我很好奇是否有任何解决方案,最好是免费的,可以有一个中央数据库以版本化的方式发布数据。
例如,
客户端 1 决定编辑个人资料,以便在其机器上获取本地副本以进行更改。当他们对那里的编辑感到满意时,他们会将结果发布到中央数据库。就像您在 perforce 中执行提交一样。
客户端 2 尝试编辑同一个本地副本,但当他们提交时,他们必须解决冲突。
中央数据库必须存储数据版本之间的压缩差异。
任何人都可以查看所提交数据的所有版本。
最佳答案
查看 OffScale DataGrove .
该产品跟踪对整个数据库(模式和数据)的更改。您可以在任何时间点标记版本,并使用简单的命令返回到数据库的旧状态。它还允许您创建同一数据库的虚拟、独立副本,以便每个团队成员都可以拥有自己独立的数据库。所有虚拟副本都被跟踪到同一个存储库中,因此将您的数据库恢复到其他人的版本非常容易(您只需 checkout 他们的版本,就像您使用源代码管理一样)。这意味着您的所有数据库都可以始终同步。
免责声明 - 我在 OffScale 工作:-)
关于version-control - 数据库的版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3156110/