如何对CouchDB的map / reduce函数进行版本控制?我希望能够将它们检入git / github,以便我的队友可以轻松地将它们应用到本地测试环境中。我知道CouchDB中存在复制功能,但我想将db视图与项目源保持一致。
答案 0 :(得分:7)
您需要的是(许多)couchapp工具之一。基本上它们都将各种结构中的一堆js文件映射到CouchDB使用的设计doc布局,并且通常提供一些简单的推/拉机制来进入和退出。
然后你可以在主文件夹&中使用git init。确保您正在对上传的设计文档进行版本控制。
有一个非常好的解释http://mindeavor.com/blog/the-anatomy-of-a-couchapp暂时忽略供应商/讨论,这不是必需的。
如果你更像是一个JS /节点的人,那么尝试https://github.com/mikeal/node.couchapp.js/或者kanso http://kan.so/很棒,但它会做得更多;你可能会发现在进入它之前你需要更多的Couch-fu。然而,这很棒,只需使用kanso push
即可开始。
如果您只想开始使用,请使用couchapp http://github.com/couchapp/couchapp这是一个python工具,可能是原始工具。
答案 1 :(得分:1)
我们(我相信大多数团队)正如你所说的那样。我们在源代码树中保留我们的视图等,并提交git。我们的应用程序是一个节点应用程序,因此我们特别容易在源代码中悄悄地将它们保存到数据库中,但这在任何语言中都相当简单 - 只需提出命名方案,将JS文件存储在特定的放置并读取文件并将数据存储在数据库中相应_design/document
的相应密钥结构中。