将 Laravel 从 9 升级到 10。更新供应商文件夹之外的文件

问题描述 投票:0回答:3

我想将现有的 Laravel 9 项目升级到版本 10。目标是,不仅供应商文件通过 Composer 进行更新。此外,我还想反映项目代码中的更改在供应商文件夹之外

我按照 Laravel 文档的 升级指南 来升级我的项目。

这里是已更改的文件。

例如我的

app/Console/Kernel.php
应该从

改变
<?php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel
{
    /**
     * Define the application's command schedule.
     *
     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
        // $schedule->command('inspire')->hourly();
    }

    /**
     * Register the commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        $this->load(__DIR__.'/Commands');

        require base_path('routes/console.php');
    }
}

<?php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel
{
    /**
     * Define the application's command schedule.
     */
    protected function schedule(Schedule $schedule): void
    {
        // $schedule->command('inspire')->hourly();
    }

    /**
     * Register the commands for the application.
     */
    protected function commands(): void
    {
        $this->load(__DIR__.'/Commands');

        require base_path('routes/console.php');
    }
}
php laravel git composer-php laravel-10
3个回答
1
投票

Laravel 新应用程序框架的更改可以通过其比较工具在 Github 上查看:https://github.com/laravel/laravel/compare/9.x...10.x

(您也可以使用 GUI Git 客户端或 Git 命令行在本地执行此操作。)

这些更改可以变成

.patch
文件,然后您可以将其应用于 您的 应用程序。 Github 再次提供了一个相当简单的方法来做到这一点; https://github.com/laravel/laravel/compare/9.x...10.x.patch.

在本地保存 .patch 文件后,您可以使用

git apply <path-to-patch-file>
将其应用到您的存储库中。在大多数情况下,这应该完全适用。

需要明确的是,这不能替代遵循 https://laravel.com/docs/10.x/upgrade 上的完整升级指南,因为它只会对默认应用程序框架进行必要的调整;它不会以任何方式更新您在 Laravel 中编写的代码。


0
投票

更新 PHP 相关语法(例如提到的类型提示)的最佳选择可能是具有适当规则的 PHP-CS-Fixer 之类的东西,但您的函数示例将无法使用它,因为这需要定义返回类型的旧方法通过 PHPDoc。

如果您修改了这些文件,则可以从 Laravel 存储库手动复制这些更改并将其调整到您的代码。


0
投票

要正常升级laravel,只需要更新composer文件即可。

打开composer.json文件 将 PHP 更改为 8 或更高,将 laravel 9 更改为 10,将 spatie/laravel-ignition 更改为 2.0 -> “要求”:{ “php”:“^8.1” “laravel/框架”:“^10.0” }

"require-dev":{ ""spatie/laravel-ignition":"^2.0" }

最后,进入项目根文件夹中的终端并运行composer update命令。

$> laravel_project> 作曲家更新

© www.soinside.com 2019 - 2024. All rights reserved.