2
我正在家里和我的笔记本电脑上的Python/MongoDB项目工作。 文档存储中的模式自然地最好由数据本身来表示 - 这就是为什么我想将测试数据与代码本身一起分发到Mercurial上的原因。如何通过VCS分发MongoDB测试数据?
最好的方法是只需转储文件中的BSON并将其添加到mercurial存储库?
我正在家里和我的笔记本电脑上的Python/MongoDB项目工作。 文档存储中的模式自然地最好由数据本身来表示 - 这就是为什么我想将测试数据与代码本身一起分发到Mercurial上的原因。如何通过VCS分发MongoDB测试数据?
最好的方法是只需转储文件中的BSON并将其添加到mercurial存储库?
因为它是二进制文件并且无法轻松查看,所以将BSON转储并放入VCS没有什么意义。
您可以使用mongoexport
工具将集合导出为JSON。你甚至可以通过查询过滤器来限制导出文档的数量。
这里是(重新格式化为可读性)的例子:
[email protected]$ mongoexport -d test -c geo \
[email protected]$ -q '{"_id": ObjectId("4efa5f7d8840e680c850cd94") }'
connected to: 127.0.0.1
{ "_id" : { "$oid" : "4efa5f7d8840e680c850cd94" },
"longg" : [ { "start" : 322815488, "end" : 322817535 },
{ "start" : 822815488, "end" : 822817535 } ],
"m" : "Cracow",
"postal" : 55050,
"lat" : [ "XX.89XXX", "XX.74XXX" ] }
exported 1 records
也许尝试通过'xxd'过滤器在每个方向上运行它,如果你认为这将是更有意义的是能够diff的它。 – 2012-01-01 21:15:14