如何在多个存储库之间共享Protocol Buffer .proto文件

Swa*_*raj 20 python git protocol-buffers node.js

我们正在考虑使用Protocol Buffers在python和node.js服务之间进行通信,每个服务都存在于他们自己的存储库中.

由于.proto两个repos都必须可以访问这些文件,我们应该如何共享.proto文件?

我们目前正在考虑:

  1. 为我们所有.proto文件创建一个repo ,并使其成为我们所有服务的git子树
  2. 为我们所有.proto文件创建一个repo,在push上发布私有python模块和私有节点模块,并要求各个服务的模块
  3. 为我们的所有.proto文件创建一个repo ,并将存储库指定为pip/ npmpackage 的目标

.proto在存储库之间共享文件的标准方法是什么?

jpa*_*jpa 12

这取决于您的开发过程.

对于大多数用途,git子树/子模块似乎是一种明智的解决方案.如果你有更多的下游项目,那么发布一个现成的模块是有意义的,因为每个项目都不需要protobuf生成器.

  • 这就是我们目前所追求的。仍然希望对此有更好的文献记载的最佳实践。似乎是一个相当普遍的用例 (3认同)