Ich arbeite an einem Projekt mit Yii2 PHP-Framework. Yii2 verwendet Composer mit fxp/Composer-Asset-Plugin, um Projektabhängigkeiten zu behandeln.Yii2 mit Composer und FXP/Composer-Asset-Plugin
Das Problem ist, wenn ein neuer Entwickler für das Projekt kommt und läuft
git clone <project-repo>
composer install
oder ein anderer Entwickler möchte eine neue Erweiterung mit composer require <package-name>
oft installieren (sehr häufig) etwas schief geht und Komponist (oder vielleicht Asset-Plugin, erwähnte ich oben) zeigt eine weitere unklare Fehlermeldung (vielleicht nur für mich). Und der Entwickler verbringt viel Zeit, um herauszufinden, was dieser Fehler bedeutet und wie er damit umgehen soll.
Heute habe ich Projekt auf Windows-Maschine geklont habe, installierte den neuesten Komponisten und Asset-Plugin Versionen warten composer install
und nach ca. 20 Minuten laufen, bekam dies:
On Meine Linux-System gleichen Abhängigkeiten wurden ohne Fehler installiert.
Frage №1 Was bedeutet dieser Fehler und wie kann ich es beheben?
Frage №2 Ist es so schlechte Idee vendor/
Verzeichnis zur Versionskontrolle hinzufügen? (Ich habe https://getcomposer.org/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md lesen)
Frage №3 Vielleicht etwas mache ich falsch, oder es ist ein Geheimnis, ich bin über nicht bewusst, dass Abhängigkeiten in Yii2 ohne solchen großen Zeitverlust zu verwalten.
Vielen Dank.
composer.json
:
{
"name": "yiisoft/yii2-app-basic",
"description": "Yii 2 Basic Project Template",
"keywords": ["yii2", "framework", "basic", "project template"],
"homepage": "http://www.yiiframework.com/",
"type": "project",
"license": "BSD-3-Clause",
"support": {
"issues": "https://github.com/yiisoft/yii2/issues?state=open",
"forum": "http://www.yiiframework.com/forum/",
"wiki": "http://www.yiiframework.com/wiki/",
"irc": "irc://irc.freenode.net/yii",
"source": "https://github.com/yiisoft/yii2"
},
"repositories": [
{
"type": "git",
"url": "https://github.com/ZeroVision/swiftmailer.git"
}
],
"minimum-stability": "dev",
"require": {
"php": ">=5.4.0",
"giggsey/libphonenumber-for-php": "~7.0",
"yiisoft/yii2": "2.0.7",
"swiftmailer/swiftmailer": "dev-fixStreamBufferTransport",
"yiisoft/yii2-bootstrap": ">=2.0.3",
"yiisoft/yii2-swiftmailer": "*",
"yiisoft/yii2-authclient": "^[email protected]",
"2amigos/yii2-date-picker-widget": "~1.0",
"kartik-v/yii2-widget-timepicker": "*",
"kartik-v/yii2-widget-rating": "*",
"2amigos/yii2-gallery-widget": "~1.0",
"2amigos/yii2-ckeditor-widget": "~1.0",
"uran1980/yii2-scroll-to-top": "dev-master",
"yii-cms/yii2-robokassa": "^1.1",
"onokumus/metismenu": "v2.4.2",
"rmrevin/yii2-fontawesome": "*",
"dektrium/yii2-user": "*",
"p2made/yii2-sb-admin-theme": "1.1.2",
"p2made/yii2-p2y2-things": "*",
"p2made/yii2-asset-collection": "*",
"demi/image": "~1.0",
"demi/cropper": "~1.0",
"cyneek/yii2-widget-upload-crop": "dev-master",
"Nemmo/yii2-attachments": "*",
"2amigos/yii2-file-input-widget": "*",
"rkit/yii2-ajaxform-plugin": "^0.0.4",
"nsept/yii2-birthday-picker": "*",
"bryglen/yii2-apns-gcm": "1.0.4"
},
"require-dev": {
"yiisoft/yii2-codeception": "*",
"yiisoft/yii2-debug": "*",
"yiisoft/yii2-gii": "*",
"yiisoft/yii2-faker": "*"
},
"config": {
"process-timeout": 1800
},
"scripts": {
"post-create-project-cmd": [
"yii\\composer\\Installer::postCreateProject"
]
},
"extra": {
"yii\\composer\\Installer::postCreateProject": {
"setPermission": [
{
"runtime": "0777",
"web/assets": "0777",
"yii": "0755"
}
],
"generateCookieValidationKey": [
"config/web.php"
]
},
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
}
Könnten Sie hier Ihren composer.json einfügen? – Bizley