加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何使用Git在开发和生产环境中分发Thrift生成的代码?

发布时间:2020-12-13 17:09:36 所属栏目:PHP教程 来源:网络整理
导读:如何使用 Git( PHP,Python等)管理存储库和部署例程中生成的源代码文件? 例如,我有一个名为“interfaces”的存储库,其中包含Thrift定义.它们可以转换为Python,PHP,JS等骨架/存根.不同语言的其他项目(每个项目都在自己的存储库中)希望使用这些存根.如何将存根
如何使用 Git( PHP,Python等)管理存储库和部署例程中生成的源代码文件?

例如,我有一个名为“interfaces”的存储库,其中包含Thrift定义.它们可以转换为Python,PHP,JS等骨架/存根.不同语言的其他项目(每个项目都在自己的存储库中)希望使用这些存根.如何将存根交付给项目?

我只看到两种方式:

>生成存根文件并将它们存储在“interfaces”存储库中,并且此存储库应附加到项目的存储库(作为只读子模块或任何其他方式).但是,由于过于复杂的“git子模块”概念,在检查接口和存根的更新时,这种方式引入了许多令人头疼的问题.
>将纯“接口”存储库附加到每个项目,并生成存根文件作为临时git-ignorable(!)文件(使用“make stubs”或类似文件).这样,每个项目都可以拥有自己的生成设置,并应用自己的补丁(如果需要的话).但是你需要在PHP / Python开发和生产环境中引入一些编译命令(而不仅仅是“git pull”).

这些方法的优点和缺点是什么?

解决方法

通常最好支持“存储生成内容”路由上的“生成”路由,主要是因为您并不总是100%确定所述生成内容的当前状态:它是否与源同步?

在推送时,后接收挂钩可以小心生成相关内容.
见Git Hooks或Pro-Git hooks.但是,在你自己的本地实例上(即在git pull上),别名可能同时结合拉动和生成所述内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读