如何在多个存储库之间共享协议缓冲区.proto文件
我们正在考虑使用协议缓冲区 ( Protocol Buffers)来进行每个活在自己的回购站中的python和node.js服务之间的通信。
由于.proto
文件必须可以同时访问,我们应该如何共享.proto
文件?
我们正在考虑:
- 为我们所有的
.proto
文件创build一个.proto
,并将其作为我们所有服务的git子树 - 为我们所有的
.proto
文件创build一个repo,在push上发布一个私有python模块和私有节点模块,并要求各个服务的模块 - 为我们所有的
.proto
文件创build一个仓库,并指定仓库作为pip
/npm
包的目的地
在储存库之间共享.proto
文件的标准方式是什么?
这取决于你的开发过程。
git子树/子模块对于大多数目的来说似乎是一个明智的解决scheme。 如果你有更多的下游项目,发布一个现成的模块将是有意义的,因为每个项目都不需要protobuf生成器。
我们在同样的情况下,使用了3个回购:服务器端用c ++编写,客户端用actionscript 3编写,protobufs用在第三个,并且使用了它们两个。 对于一个大团队和大项目,我认为这是一个不错的select。