Laravel 5.5 的 “vendor:publish” 新增 provider 提示

在以前的版本中,当使用 artisan vendor:publish 命令来发布扩展包的资源时,需要自己指定 --provider 参数或者 --tag 参数来确定要发布什么资源。比如 --provider="Barryvdh\Debugbar\ServiceProvider",用于发布指定 provider 包含的资源,或者 --tag=config 这样的命令。如果你什么参数都不加的话,默认会发布所有 provider 包含的所有资源(配置文件、视图、样式和JS等)。在 Laravel 5.5 中,做了一点增强,让使用上更方便了。

laravel 5.5 vendor:publish 演示

如上面的动画所展示的,如果不加任何参数,会先提示一个列表,让你选择要发布哪一个 provider 或者 tag 下的资源。这样就不用去记住要发布的资源所属的provider的完全限定名,非常方便。这个功能由 Trevor Fitzgerald 在 Laravel 5.5 中加入。

除了通过交互式的操作来选择发布所需的资源之外,依然可以用以往的参数方式,比如 --provider--tag, 除此之外还加入了一个 --all 参数,可以在不提示的情况下直接发布所有 provider 包含的所有资源。

Laravel 5.5 版本中 php artisan vendor:publish 命令包含的完整参数:

用法:
    vendor:publish [参数]

参数:
        --force  覆盖任何已经存在的文件
        --all    不提示直接发布所有 service providers 包含的资源
        --provider[=PROVIDER] 指定哪一个 service provider 包含所需发布的资源
        --tag[=TAG] 指定一个或多个包含所需资源的 tags
    -h, --help 显示命令帮助
    -q, --quite 执行命令且不输出任何信息
    -V, --version 显示应用的版本号(显示的是 Laravel Framework 的版本号)
        --ansi    强制 ANSI 编码输出
        --no-ansi 禁用 ANSI 编码输出
    -n, --no-interaction 不提示任何交互式问题
        --env[=ENV]   命令将于哪一个环境下执行
    -v|vv|vvv, --verbose  增加输出信息的详细级别: 1级=正常输出,2级=更详细的信息,3级=调试信息
本条目发布于。属于PHP分类,被贴了 标签。