我不再使用带有匹配Posts
表的SQL Server PostRevisions
表来进行平面文件(文本/ HTML)用户内容版本控制,而是让Mercurial有效地为我存储更改。只需跟踪每个用户的文件存储库的位置。
这将使备份变得非常简单,具体取决于您希望如何共享或分享内容。显而易见的解决方案是使用单个存储库来存储所有用户数据,每个用户ID都有文件夹。
但是,在将文件提交到存储数百万用户文件的存储库时,我对这种方法的性能和并发性问题感到不满。
是否有人尝试将Mercurial用作平面用户文件的辅助数据存储?
答案 0 :(得分:1)
除非你想利用更强大的功能,像hg提供的SCM系统我建议你不要采用这种方法。你打算使用分支机构和合并吗?可能不是。那么在这里使用hg你真正获得了什么?使用数据库进行备份也很简单。
在一天结束时,带有帖子和修订表的RDBMS工作正常,并且比基本上基于文件锁定的解决方案(hg,git等)更强大。它也可能表现得更好。
不过,您还应该评估面向文档的商店,例如Mongo或CouchDB。