cherrypulp / laravel-package-generator
Laravel 包生成器
Requires
- php: >=7.0
- illuminate/console: >=5.5.0
- illuminate/container: >=5.5.0
- illuminate/filesystem: >=5.5.0
- illuminate/support: >=5.5.0
- illuminate/view: >=5.5.0
This package is auto-updated.
Last update: 2024-09-04 11:17:20 UTC
README
这是一个简单的包,可以快速为其他由 Alexander Melihov Laravel 包生成器分叉的 Laravel 包生成基本结构。
安装
通过 Composer 安装
composer require --dev cherrypulp/laravel-package-generator
将服务提供者添加到 config/app.php
文件的 providers
部分(如果你使用 laravel>=5.5 并具有包自动发现功能,则此步骤为可选)
Cherrypulp\LaravelPackageGenerator\ServiceProvider::class,
如果你想自定义默认值,请发布包配置
php artisan vendor:publish --provider="Cherrypulp\LaravelPackageGenerator\ServiceProvider" --tag="config"
可用命令
php artisan package:new vendor package
创建新包。
示例:php artisan package:new Cherrypulp SomeAwesomePackage
此命令将执行以下操作:
- 创建
workbench/cherrypulp/some-awesome-package
文件夹 - 在 app composer.json 中注册包
- 将包骨架从骨架文件夹复制到创建的文件夹(你可以在配置中提供自定义骨架路径)
- 运行
git init packages/cherrypulp/some-awesome-package
- 运行
composer update cherrypulp/some-awesome-package
- 运行
composer dump-autoload
我建议使用交互式 -i
标志运行此命令
php artisan package:new Cherrypulp SomeAwesomePackage -i
这样,你将需要为每个必需的值进行提示。
php artisan package:remove
删除现有包。
示例:php artisan package:remove Cherrypulp SomeAwesomePackage
此命令将执行以下操作:
- 运行
composer remove cherrypulp/some-awesome-package
- 删除
packages/cherrypulp/some-awesome-package
文件夹 - 在 app composer.json 中注销包
- 运行
composer dump-autoload
交互式模式也可行。
php artisan package:clone
克隆现有包。
示例:php artisan package:clone https://github.com/cherrypulp/laravel-env-validator Cherrypulp LaravelEnvValidator --src=src/LaravelEnvValidator
此命令将执行以下操作:
- 在
workbench/cherrypulp/laravel-env-validator
文件夹中克隆指定的仓库 - 在 app composer.json 中注册包
- 运行
composer update cherrypulp/laravel-env-validator
- 运行
composer dump-autoload
交互式模式也可行。如果你需要,你可以使用 -b
标志指定要克隆的分支。
自定义骨架
此包将复制指定骨架路径中的所有文件夹和文件到包文件夹。你可以在骨架中使用模板。所有带有 tpl
扩展名的文件将提供一些变量,可以在其中使用。将移除 tpl
扩展名。
可用于模板中的变量
- vendor(例如,Cherrypulp)
- package(例如,SomeAwesomePackage)
- vendorFolderName(例如,cherrypulp)
- packageFolderName(例如,some-awesome-package)
- packageHumanName(例如,Some awesome package)
- composerName(例如,cherrypulp/some-awesome-package)
- composerDesc(例如,A some awesome package)
- composerKeywords(例如,some,awesome,package)
- licence(例如,MIT)
- phpVersion(例如,>=7.0)
- aliasName(例如,some-awesome-package)
- configFileName(例如,some-awesome-package)
- year(例如,2017)
- name(例如,Alexander Melihov)
- email(例如,cherrypulp@getcherrypulp.io)
- githubPackageUrl(例如,https://github.com/cherrypulp/some-awesome-package)
需要手动处理的事项
- 服务提供者和别名注册(如果你使用 laravel <5.5)
- 在 README.md 中
- StyleCI 仓库标识符
- Sensio Insight 仓库标识符
- 包描述
- 使用部分
安全
如果你发现任何与安全相关的问题,请通过电子邮件 amelihovv@ya.ru 联系,而不是使用问题跟踪器。