git - 如何/应该将 Zend Framework 2 包含到 Git 版本化项目中?

标签 git version-control zend-framework2

应该如何管理 Zend Framework 2 项目的版本控制?是否有最佳实践/“标准方法”? “子模块”是正确的关键字吗?

最佳答案

Zend Framework 2 项目通常是一个轻量级的骨架应用程序,具有各种已安装的模块,通常位于单独的专用存储库中。

主存储库通常不会受到很多更改的影响,因此您可以为其创建一个 git 存储库(ZendSkeletonApplication 的分支)。虽然模块更相关并且需要一些小心,但框架应用程序通常在几个月内仅在几个细节上发生变化。

我可以建议以下方法:

  1. 创建您的第一个版本的应用程序特定模块作为 git submodules在您的骨架应用程序分支的 modules/ 目录中。
  2. 按照建议的方式处理模块,只需提交回原始存储库并更新根存储库中的 git 子模块引用。
  3. 一旦你有了一个相当好的工作版本(并且对 composer 和 zf2 一般有一定的信心),你可以通过添加 composer.json 将它们转换为 composer 包文件。
  4. 删除转换后的zf2模块的git子模块和use composer to import it反而。为此,您只需要告诉 Composer 存储库所在的位置。这将使该模块可在几秒钟内安装到您的任何应用程序上,帮助您重新使用现有组件。从现在开始,重用您为不同项目编写的代码变得非常容易。
  5. 标记并逐步稳定包的依赖项和版本(因为您将开始拥有自己的 private composer packages ecosystem )

这就是我个人的做法,它已经变成了一个非常好的开发过程。每次共享功能时,我只需将其移动到一个新包并更新模块中的 composer.jsonSatis处理剩下的事情,我们所有的实时系统都可以非常快速地升级。

您可能想阅读更多 advanced techniques and tips and tricks about composer一旦你熟悉了它。

关于git - 如何/应该将 Zend Framework 2 包含到 Git 版本化项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15119810/

相关文章:

git - 检测 git 分支仅触及特定路径

visual-studio - MDF 文件的版本控制

xcode - 在 Xcode 4.6 中禁用本地 git 存储库

php - 使用复合键的 Doctrine 2 Hydration

git - 如何从 git index 获取文件的内容?

git - 使用 Git 在特定时间或日期自动提交和推送

Git - 多个用户使用相同的工作目录 : permissions issues in . git 元文件

version-control - 在 Mercurial 中使用移植的后果

php - Zend\Session\SessionManager 和 cookie_lifetime

php - 如何在 zend 中动态设置开放图元标签以进行 Facebook 共享