开发人员应该提交Go生成的代码吗?

时间:2019-06-02 13:33:40

标签: go code-generation

我使用代码生成器插件根据OpenAPI规范生成服务器存根。

我想知道是否应该将生成的代码提交给Version Control吗?

2 个答案:

答案 0 :(得分:4)

通常,是的。

道理很简单:如果我是代码的下游用户,也就是说,我只想将您的库作为依赖项包含在内或构建您的应用程序,那么,就没有必要为构建代码增加额外的负担了您的代码;我应该只go build / go install就能将您的代码命名为一天。

如果相反,我打算实际开发您的代码-意图是将我的更改包含在上游,或者保持这些更改未发布-完全可以要求我重新生成某些文件,这是必需的。

答案 1 :(得分:0)

这将取决于代码生成的上下文。 理想情况下,您希望在测试和构建步骤之前向您的CI管道添加一个go generate步骤。 在回购自述文件中,您应该添加说明,说明如何在开发过程中生成文件。

但是,如果生成的东西只能在您的开发计算机上运行,​​则可以将其添加到源代码管理中。