gpt4 book ai didi

couchdb - 多个开发人员保持 CouchDB 彼此同步

转载 作者:行者123 更新时间:2023-12-01 00:05:40 47 4
gpt4 key购买 nike

我正在考虑将 CouchDB 用于即将到来的 Web 开发项目。

在本地运行应用程序的各种开发人员之间保持 CouchDB 文档存储库同步的最佳方法是什么?

一个示例:假设开发人员 A 在 Couch 中创建了一个新 View 或设计文档,或者只是简单地向现有 View 添加一个字段。他们还检查了一些客户端代码,这些代码希望该字段位于 CouchDB View 中。开发人员 B 进来更新最新的源代码,拉下开发人员 A 的客户端更改。开发人员 B 如何获得伴随客户端代码的 Couch 更改?

在典型的 RDBMS 中,这将通过检查一组 SQL 文件或数据库迁移到 SCM 系统来完成。开发人员 B 更新他的代码后,他将运行新的 SQL 或迁移脚本来升级他的数据库架构。

也许在 Couch 中有一种方法可以导出/导入设计文档并查看定义并将其检查到 SCM 系统中?也许我只需要对我的 RDBMS 背景洗脑进行反编程。

最佳答案

我通常将 View 的 map 和 reduce 函数的 .js 文件保存在我的代码存储库中。一个常见的模式是为每个 View 创建一个文件夹,并为每个 View 函数(map/reduce)创建一个单独的 .js 文件。一个例子:

views/
tags/
map.js
reduce.js
users/
map.js
reduce.js
views/tags/map.js的内容只是 JavaScript map 函数,例如:
function(doc) {
if(doc.tags && doc.tags.length) {
for(var index in doc.tags) {
emit(doc.tags[index], null);
}
}
}

然后,您可以选择任何方式管理您的 View ,可能使用 CouchApp或类似的东西将所有内容同步到 CouchDB 实例。当然,我不知道什么是“最佳实践”,但这是我所做的,并且与我的团队合作得很好。

关于couchdb - 多个开发人员保持 CouchDB 彼此同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1487090/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com