rhyslees / laravel-installer-plus
Laravel Installer Plus
Requires
- php: ^8.0
Requires (Dev)
README
这是一个社区项目,而不是官方Laravel项目
- 这是一个用于安装Laravel的命令行工具。
- 它将安装指定的Laravel应用程序和包。
使用Laravel Zero构建。
要求
- Laravel Installer
- Composer.
- PHP 8.0 或更高版本。
重要:此包假定您已全局安装了laravel-installer、composer和php。
安装
$ composer global require rhyslees/laravel-installer-plus $ laravel-installer-plus install
您的配置存储在$HOME/.laravel-installer-plus/config.json
中
文档
选项
Laravel Installer Plus 包含所有 Laravel Installer 选项,因此您可以选择性地传递它们。
--dev : Create a development environment
--git : Initialize a git repository
--branch : Initialize the application with the given branch
--github : Create a new repository on GitHub
--organization : The GitHub under the given organization
--jet : Installs the Laravel Jetstream scaffolding
--stack : The Jetstream stack that should be installed
--teams : Indicates whether Jetstream should be scaffolded with team support
--prompt-jetstream : Issues a prompt to determine if Jetstream should be installed
--force : Overwrite existing files
注意:如果您使用像
--git
这样的选项为每个应用程序,可以将它们添加到配置中的laravel-options
,它们将被附加到命令中,因此您无需手动指定(见下例)。
"laravel-options": { "--branch": "green", "--git": true },
项目安装位置
- laravel应用程序将被安装的位置。
如果您有一个包含所有项目的目录,您可以在$HOME/.laravel-installer-plus/config.json
中设置install-location
。然后无论您从哪里运行命令,都会运行到该目录的安装命令。
更改此设置时,请记住您只需指定相对于您家目录的路径。
macOS / GNU / Linux 发行版:
$HOME/
例如,如果您在您的家目录中使用名为Projects
的文件夹,您可以设置安装位置为Projects
。
"install-location": "Projects"
将此选项留为空字符串将使用当前目录。
注意:如果您不确定是否正确设置了此设置,可以通过运行
laravel-installer-plus location {name}
来检查,这将输出它将安装应用程序的位置。
要安装的包
- 将要安装的包。
- 包括
composer
和npm
。 - 您可以在配置文件中更改此设置。
- 您需要在
packages
数组中添加包。 - 指定您要安装的包的键
要安装的包示例
"packages-to-install": { "composer": [ "spatie-laravel-ray", "barryvdh-laravel-debugbar", ], "npm": [ "laravel-echo", "pusher-js" ] },
包
- 可以安装的包。
- 您可以在配置文件中更改此设置。
- 包将按您指定的顺序安装。
- 您可以使用composer和npm同时安装包。
包示例
"packages": { "composer": [ { "name": "Laravel Ray", "key": "spatie-laravel-ray", "commands": [ "composer require spatie/laravel-ray", "php artisan ray:publish-config" ] } ], "npm": [ { "name": "Laravel Echo", "key": "echo", "commands": [ "npm i laravel-echo", ], } ] },
仓库
如果您需要使用私有包,首先将包添加到packages->composer
数组中。然后您可以将其添加到repositories
数组中。
"repositories": [ { "key": "", "name": "", "type": "", "url": "" } ],
key
必须与包键匹配。name
是包的名称(见下例)。type
是仓库的类型。url
是仓库的URL。
使用VCS
"repositories": [ { "key": "spatie-laravel-ray", "name": "laravel-ray", "type": "vcs", "url": "https://github.com/spatie/laravel-ray" } ],
使用路径(符号链接)
"repositories": [ { "key": "spatie-laravel-ray", "name": "laravel-ray", "type": "path", "url": "../../Packages/spatie/laravel-ray" } ],
注意:当使用路径时,请确保URL相对于您的项目目录。
命令
- 命令将按您指定的顺序执行。
- 您可以使用composer和npm执行命令。
您可以在命令中使用$name
和$nameSnake
变量,这在例如创建数据库时可能很有用。
"mysql -u root -e 'create database $nameSnake'"
这将变成
"mysql -u root -e 'create database my_app'"
注意:如果您想运行sudo命令,您将在每个命令步骤(即预安装、安装后、预打包、安装后)被提示输入密码。
命令示例
"commands": { "composer": { "pre-install": [ "sudo composer self-update", "composer cache-clear" ], "post-install": [ "php artisan migrate:fresh --seed", "valet restart", "valet link", "valet secure", ], "pre-package": [ "composer update", ], "post-package": [ "composer dump-autoload", ], }, "npm": { "pre-install": [ "npm install -g npm@latest", ], "post-package": [ "npm run dev", ], }, }
预安装
在安装laravel之前将运行的命令。
重要:预安装命令是在安装位置而不是应用程序位置运行的。
安装后
安装laravel后运行的命令。
预打包
在安装包之前运行的命令。
安装后
安装包后运行的命令。
####待办事项
- 使其能够从当前工作目录安装。
- 添加支持操作文件,如.env、app.css等。
- 停止使用laravel/installer来安装laravel。
许可证
Laravel Installer Plus是一个开源软件,根据MIT许可证授权。