sk / symfony-venv
为轻松调用控制台二进制文件和一些快捷方式创建虚拟环境。
Suggests
- bamarni/symfony-console-autocomplete: Adds shell completion for Symfony Console based scripts
README
为Symfony和Laravel项目创建虚拟环境。高度启发于Python虚拟env activate脚本,目前测试适用于bash、fish-shell和z-shell。
安装
确保已全局安装Composer,如Composer文档中的安装章节所述。
将其添加到您的symfony应用程序中
步骤1:下载库
打开命令行,进入项目目录,并执行以下命令以下载此扩展包的最新稳定版本
$ composer require sk/symfony-venv
步骤2:激活虚拟环境
在项目根目录中运行
Bash / Z-Shell
$ . vendor/bin/activate
Fish shell
$ . vendor/bin/activate.fish
步骤3:使用它
现在您可以从任何地方调用位于项目/bin目录下的console
和其他脚本。如果您还全局安装了symfony-console-autocomplete,控制台的自动补全也应该工作。
~/P/website-api $ . vendor/bin/activate
website-api (dev) ~/P/website-api $ console <TAB><TAB>
about debug:translation doctrine:mapping:import help make:twig-extension
api:json-schema:generate debug:twig doctrine:mapping:info lint:twig make:unit-test
api:openapi:export doctrine:cache:clear-collection-region doctrine:migrations:diff lint:xliff make:user
assets:install doctrine:cache:clear-entity-region doctrine:migrations:dump-schema lint:yaml make:validator
cache:clear doctrine:cache:clear-metadata doctrine:migrations:execute list make:voter
cache:pool:clear doctrine:cache:clear-query doctrine:migrations:generate make:auth router:match
cache:pool:delete doctrine:cache:clear-query-region doctrine:migrations:latest make:command security:encode-password
cache:pool:list doctrine:cache:clear-result doctrine:migrations:migrate make:controller server:dump
cache:pool:prune doctrine:cache:contains doctrine:migrations:rollup make:crud server:log
cache:warmup doctrine:cache:delete doctrine:migrations:status make:entity server:run
config:dump-reference doctrine:cache:flush doctrine:migrations:up-to-date make:fixtures server:start
debug:autowiring doctrine:cache:stats doctrine:migrations:version make:form server:status
debug:config doctrine:database:create doctrine:query:dql make:functional-test server:stop
debug:container doctrine:database:drop doctrine:query:sql make:migration swiftmailer:email:send
debug:event-dispatcher doctrine:database:import doctrine:schema:create make:registration-form swiftmailer:spool:send
debug:form doctrine:ensure-production-settings doctrine:schema:drop make:serializer:encoder translation:update
debug:router doctrine:generate:entities doctrine:schema:update make:serializer:normalizer
debug:swiftmailer doctrine:mapping:convert doctrine:schema:validate make:subscriber
或Laravel
~/P/blog $ . vendor/bin/activate
blog (local) ~/P/blog$ artisan <TAB><TAB>
app:name config:clear event:generate make:channel make:listener make:policy migrate notifications:table queue:flush route:cache storage:link
auth:clear-resets db:seed event:list make:command make:mail make:provider migrate:fresh optimize queue:forget route:clear tinker
cache:clear down help make:controller make:middleware make:request migrate:install optimize:clear queue:listen route:list up
cache:forget dump-server inspire make:event make:migration make:resource migrate:refresh package:discover queue:restart schedule:finish vendor:publish
cache:table env key:generate make:exception make:model make:rule migrate:reset preset queue:retry schedule:run view:cache
clear-compiled event:cache list make:factory make:notification make:seeder migrate:rollback queue:failed queue:table serve view:clear
config:cache event:clear make:auth make:job make:observer make:test migrate:status queue:failed-table queue:work session:table
更改环境
命令e
设置APP_ENV环境变量。对于较旧的symfony安装,也设置了SYMFONY_ENV。激活时,变量在symfony中初始设置为dev
,在laravel中为local
。变量在取消激活时不被清除。
website-api (dev) ~/P/website-api $ e prod
website-api (prod) ~/P/website-api $
清除缓存
venv还添加了console cache:clear
的快捷方式:ccc
website-api (dev) ~/P/website-api $ ccc
// Clearing the cache for the dev environment with debug true
// Warming up cache...
// Removing old cache directory...
// Finished
[OK] Cache for the "dev" environment (debug=true) was successfully cleared.
website-api (dev) ~/P/website-api $
最后一步:取消虚拟环境
要取消虚拟环境,只需取消激活即可
$ deactivate
控制台自动补全
如果symfony-console-autocomplete在$PATH中可用,则控制台的自动补全将自动生成。
注意:如果向控制台添加了新命令,则它们将在下一次激活之前不会被识别。
贡献
在为此存储库做出贡献之前,请首先通过问题、电子邮件或任何其他方式与存储库所有者讨论您想要做出的更改。
请注意,我们有一个行为准则,请在与项目的所有互动中遵循它。
拉取请求流程
- 在进行构建时,请确保在层结束时删除任何安装或构建依赖项。
- 更新README.md,包括界面更改的详细信息,这包括新的环境变量、公开的端口、有用的文件位置和容器参数。
- 在示例文件和README.md中增加版本号,以代表此拉取请求的新版本。我们使用的版本方案是SemVer。
- 一旦您获得两位其他开发者的批准,您就可以合并拉取请求,或者如果您没有合并权限,您可以请求第二位审阅者为您合并。
行为准则
我们的承诺
为了营造一个开放和包容的环境,我们作为贡献者和维护者承诺,确保每个人,无论年龄、体型、残疾、种族、性别认同和表达、经验水平、国籍、个人外貌、种族、宗教或性取向和性取向,都能在我们的项目和社区中享有无骚扰的参与体验。
我们的标准
以下行为有助于营造积极的环境:
- 使用欢迎和包容的语言
- 尊重不同的观点和经验
- 优雅地接受建设性的批评
- 关注社区的最佳利益
- 对其他社区成员表示同情
以下是不被接受的行为示例:
- 使用性化语言或图像,以及不受欢迎的性关注或进展
- 恶意中伤、侮辱性评论、个人或政治攻击
- 公开或私下的骚扰
- 未经明确许可发布他人的私人信息,例如身体或电子地址
- 在专业环境中可能被认为是不适当的其他行为
我们的责任
项目维护者负责阐明可接受行为的标准,并期望在出现任何不可接受行为的情况下采取适当和公正的纠正措施。
项目维护者有权也有责任删除、编辑或拒绝与这一行为准则不一致的评论、提交、代码、维基编辑、问题和其他贡献,或者暂时或永久禁止他们认为不适当、威胁性、冒犯性或有害的任何贡献者。
范围
此行为准则适用于项目空间以及个人代表项目或其社区时的公共空间。代表项目或社区的行为示例包括使用官方项目电子邮件地址、通过官方社交媒体账户发布,或在在线或离线活动中担任指定的代表。项目维护者可以进一步定义和阐明代表项目的内容。
执行
可以通过联系项目团队me@xbug.de来报告滥用、骚扰或其他不可接受行为。所有投诉都将得到审查和调查,并将根据情况作出必要的和适当的回应。项目团队有义务对事件报告人保密。具体的执行政策细节可能另行发布。
不遵守或执行行为准则的项目维护者可能会面临其他项目领导成员确定的临时或永久性后果。
归属
本行为准则改编自贡献者公约,版本1.4,可在http://contributor-covenant.org/version/1/4找到。
许可MIT
版权所有2019 Sebastian Kroczek me@xbug.de
特此免费许可任何获得此软件及其相关文档副本(以下简称“软件”)的个人,在不受限制的情况下处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向提供软件的个人授予上述权利,但受以下条件约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,包括但不限于对适销性、特定用途适用性和非侵权的保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论是否源于、因之或与此软件或软件的使用或其他方式有关,无论基于合同、侵权或其他法律行为。