如何使用不同版本的cakephp?

时间:2013-08-19 23:47:22

标签: php linux cakephp cakephp-2.0

我已经下载了很多cakephp版本,从2.3.1到2.3.9,我想用不同版本测试我的应用程序。

我知道我需要使用我想要使用的版本覆盖/ lib目录。但是,有更有效的方法吗?

我有:

/cakephp/2.3.1
/cakephp/2.3.2
/cakephp/2.3.3
/cakephp/2.3.4
....

如何轻松切换cakephp的版本?

也许链接:/home/example.com/www/lib > /cakephp/2.3.2/lib

2 个答案:

答案 0 :(得分:3)

<强>概述:

这非常简单,只需要在单个文件中更改路径。

<强>详细信息:

将所有蛋糕版本保存在app/目录上方的文件夹中 - 如下所示:

app/
cake/
    cakephp_1_3/
    cakephp_2_1/
    cakephp_2_2_beta/
    cakephp_2_3_9/

然后,只要您想尝试新版本,只需将CAKE_CORE_INCLUDE_PATH文件中设置app/webroot/index.php的行更改为您要使用的CakePHP版本。例如:

define('CAKE_CORE_INCLUDE_PATH', 'D:\wamp\cakephp\cakephp_2_3_9\lib');

备注:

这也可以在线使用 - 只需确保更改服务器上的位置而不是本地计算机的路径。

我发现将CakePHP核心文件保持分离是非常有用的,这样您就可以轻松更新到最新版本,同时允许在有任何问题时返回步骤。

另外,请确保您是否需要在特定版本的蛋糕中保留的任何插件,并将其复制到新版本。

答案 1 :(得分:0)

就我个人而言,我已经开始使用CakePHP从1.3稳定到最新的2.4 beta。

我的应用程序从来没有多个版本,但我已成功从一个版本升级到新版本。这是我唯一需要针对不同版本的CakePHP测试我的应用程序。

我不确定在您的情况下针对不同版本测试应用程序的原因。

我将首先阅读迁移指南,看看是否有任何重大变化。通常用于次要升级,意思是从2.3.1到2.3.2,我会跳过阅读迁移指南,因为这些变化并不大。

如果是2.1到2.2之类的重大升级,我的步骤是:

  1. 创建单独的分支
  2. 将我的lib文件夹替换为新版本。
  3. 在阅读迁移指南后重构任何现有的应用代码以适应升级
  4. 必要时重构我的单元测试
  5. 继续重复3和4,直到所有测试通过。
  6. 现在合并回主分支
  7. 对于2.3.1到2.3.2之类的小型升级,我的步骤是:

    1. 创建单独的分支
    2. 将我的lib文件夹替换为新版本。
    3. 运行我的单元测试
    4. 必要时重构应用程序代码,直到所有测试通过。
    5. 合并回主分支。
    6. 如果您因为升级而未对版本进行测试,那么我猜您使用符号链接的想法已经足够了。