rootindex / magento-composer-installer-fix
Magento模块的Composer安装程序
Requires
- php: >=5.5
- composer-plugin-api: ^1.0
- eloquent/composer-config-reader: 2.*
- symfony/console: ^2.5|^3.0
Requires (Dev)
- composer/composer: 1.0.*
- cotya/composer-test-framework: dev-master
- mikey179/vfsstream: ~1.4
- phpunit/phpunit: ~4.3
- phpunit/phpunit-mock-objects: ~2.3
- squizlabs/php_codesniffer: ~2.1
- symfony/process: ~2.5
Suggests
- colinmollenhour/modman: *
- theseer/autoload: ~1.14
This package is auto-updated.
Last update: 2024-09-10 22:11:25 UTC
README
Magento Composer Installer

本项目旨在使composer能够安装Magento模块,并自动将其集成到Magento安装中,同时将Composer的供应商自动加载功能添加到Magento中,以便可以使用与Composer兼容的第三方工具。
如果您想安装Magento核心,建议您尝试作为附加插件使用的AydinHassan/magento-core-composer-installer。
我们还强烈建议您阅读getcomposer.org上的通用composer文档。
同时,您还应该查看
Magento 2
恭喜与Magento 2一起工作。不要尝试与本项目一起使用。您的公主在另一个城堡。
项目详情
本项目仅涵盖Composer的自定义安装程序。如果您遇到旧版本问题,需要安装magento connect模块或类似模块,您需要查找packages.firegento.com,您可能需要将其作为composer仓库(全局)添加。
composer config -g repositories.firegento composer http://packages.firegento.com
支持的PHP版本
我们不官方支持那些已达到生命周期结束的PHP版本,这意味着不再接收安全补丁。即使安装要求仍然允许它们。
如果有某人愿意付费支持它们,这将会改变。
支持联系方式
如果您遇到问题,请耐心等待,因为正常支持是在空闲时间进行的。
如果您愿意付费解决问题,请从一开始就沟通,以获得更快的响应。
如果您需要关于Magento和Composer的咨询、支持、培训或帮助,您有机会雇佣以下人员/公司之一。
- Daniel Fahlke(维护者):flyingmana@googlemail.com @Flyingmana
- brandung - Magento团队:magento-team@brandung.de (http://brandung.de)
其他支持联系方式
- irc:freenode频道 #magento-composer #magento-reddit 以及德语用户频道 #magento-de
- twitter:@firegento
变更日志
请参阅CHANGELOG.md。
=======
已知问题
需要重新部署包
之前我们建议使用集成包命令,现在已经不再需要。 composer.phar run-script post-install-cmd -vvv -- --redeploy
这将删除所有已部署的文件并重新部署每个模块
使用非默认自动加载
我们在这个常见问题解答(FAQ)中处理了这个话题。
超时和缓慢下载。
这通常是由Github、仓库或互联网故障引起的。这是一个所有包都远程存储时的常见问题。
对于所有这些问题,您可以使用商业的Toran Proxy。它还允许托管私有包,并加快整个下载过程。
另一种选择是考虑Satis、裸git镜像和仓库别名。
另一种加快通过ssh下载速度的方法(对Satis用户也很有趣)是改进您的ssh配置。至少对于较新版本的openSSH,您可以将以下内容添加到您的.ssh/config
以重用之前的连接。
Host *
ControlPath ~/.ssh/controlmasters/%r@%h:%p
ControlMaster auto
ControlPersist 10m
还需要创建controlmasters
目录
mkdir ~/.ssh/controlmasters chmod go-xr ~/.ssh/controlmasters
更多信息可以在wikibooks上找到
用法
更新安装程序
由于这是一个composer插件,您应该只使用这两个命令来更新安装程序
composer require --no-update magento-hackathon/magento-composer-installer=3.0.*
composer update --no-plugins --no-scripts magento-hackathon/magento-composer-installer
第二个命令可能需要--with-dependencies
根据您与composer的工作流程,您可能希望使用更具体的版本
在项目中安装模块
请确保使用公共Magento模块仓库作为composer仓库
composer config -g repositories.firegento composer https://packages.firegento.com
配置您的magento根目录
,您的magento所在的目录
composer config extra.magento-root-dir "htdocs/"
以下是您的项目composer.json
可能的样子
{ "repositories": [ { "type": "composer", "url": "https://packages.firegento.com" } ], "extra":{ "magento-root-dir": "htdocs/" } }
自动将文件添加到.gitignore
如果您希望自动将部署的文件添加到您的.gitignore文件
,则只需将auto-append-gitignore
键设置为true
{ "extra":{ "magento-root-dir": "htdocs/", "auto-append-gitignore": true } }
.gitignore
文件将从当前目录加载,如果不存在,则创建。每个模块文件集上方将有一个注释,描述模块名称,以便清晰。
多次部署不会向您的.gitignore
添加额外的行,它们只会添加一次。
将Composer的自动加载器添加到Magento
有关详细信息,请参阅此处的文档。
将项目包含在部署中
当运行magento-composer-installer时,它只会在您的项目依赖项中查找magento模块。因此,如果您的项目是magento模块,并且您想测试它,您将需要一个第二composer.json
用于部署,其中您的项目被配置为必需包。
如果您还希望部署项目的文件(即根包),则需要按如下方式设置您的composer.json
{
"type": "magento-module",
...
"extra": {
"magento-root-dir": "htdocs/",
"include-root-package": true
}
}
测试
首先克隆magento-composer-installer,然后安装开发工具(默认安装)
./bin/composer.phar install
然后在项目根目录中运行vendor/bin/phpunit
。
注意:Windows用户请以管理员权限运行phpunit
。
更多信息
外部链接
核心贡献者
- Daniel Fahlke(Flyingmana,维护者)
- Jörg Weller
- Karl Spies
- Tobias Vogt
- David Fuhr
- Amir Tchavoshinia
- Vinai Kopp(维护者)
感谢
我们想要感谢几家公司,它们以不同的方式支持了这个项目。
(Flyingmana)教给我(Flyingmana)关于Magento的大部分知识,并支付了我在安装器创建的黑客马拉松活动中的参与费用。
#####melovely
作为我的当前雇主,melovely在所有与composer相关的工作中都非常支持我(Flyingmana)。