cakephp 3.0升级工具 - 麻烦理解文档 - 安装工具在哪里 - 文件夹升级 - 在哪里?

时间:2015-07-03 21:35:41

标签: upgrade cakephp-3.0

我正在尝试转换100个型号+数百个控制器&从cakephp 2.6.7到cakephp 3.0.7的观点。

我使用升级shell工具尝试了以下内容:

  • 下载zip文件
  • 放入项目主文件夹(即蛋糕2.6.7 app所在的同一文件夹)
  • php composer.phar install
  • 作曲家全部升级。这将安装所有cakePHP 3.0
  • 然后,文档给我留下了很多问题......

    升级工具提供了一个独立的应用程序,可用于升级其他应用程序或cakephp插件。每个子命令都接受指向要升级的应用程序的路径。

    cd / path / to / upgrade

    bin / cake升级全部/ home / mark / Sites / my-app

    bin / cake upgrade skeleton / home / mark / Sites / my-app

    bin / cake升级位置[路径]

    bin / cake upgrade namespaces [path]

    bin / cake升级app_uses [路径]

首先......我已经在E:\ my-app!

第二...运行“蛋糕升级位置E:\ my-app”(第一个任务命令)后,没有任何内容被修改,也没有文件被移动。实际上,如果我运行文档中列出的每个命令并且从不使用“all”命令,则\ src文件夹几乎为空。它确实包含Templates文件夹!

\ app文件夹仍然包含所有控制器,视图,模型。

没有表格,实体等

我可以使用一些提示来了解我需要以不同方式看到的内容。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

首先,升级shell是一个独立的应用程序,您应该单独安装它,即在项目的单独文件夹(例如E:\cakephp-upgrade\),中安装它夹!此外,在使用all命令时,不必再次运行单个命令,如果您必须这样做,它将使all命令变得毫无用处。

话虽如此,未移动文件的问题源于两个问题

  1. 传递给升级shell的路径必须以目录分隔符结束,否则shell将在某个时刻使用双分隔符,因为分隔符保留在路径when the root is being stripped from it中( {{ 3}} )。

  2. 如果不使用GIT,并且文件需要移动和更改,则文件不会写入正确的目标路径https://github.com/cakephp/upgrade/issues/89 but to the source path < /强>)。

  3. 请在GitHub上https://github.com/cakephp/upgrade/issues/90结束。

    不幸的是,GIT的使用似乎也是错误的( report this as an issue ),但我现在懒得跟踪它。所以,除非这一切都已解决,否则您应该能够通过手动运行 all 命令来解决这些问题,这样就可以首先移动文件了,这似乎工作正常。

    因此,假设升级应用已安装在E:\cakephp-upgrade\中,并且您的项目位于E:\my-app,那么您可以

    E:
    cd cakephp-upgrade
    bin\cake upgrade locations E:\my-app\
    bin\cake upgrade namespaces E:\my-app\
    bin\cake upgrade app_uses E:\my-app\
    bin\cake upgrade rename_classes E:\my-app\
    bin\cake upgrade rename_collections E:\my-app\
    bin\cake upgrade method_names E:\my-app\
    bin\cake upgrade method_signatures E:\my-app\
    bin\cake upgrade fixtures E:\my-app\
    bin\cake upgrade tests E:\my-app\
    bin\cake upgrade i18n E:\my-app\
    bin\cake upgrade prefixed_templates E:\my-app\
    bin\cake upgrade skeleton E:\my-app\