Composer aktualisiert das angegebene Abhängigkeitspaket
Compoesrs Anforderung/Update kann das angegebene Abhängigkeitspaket aktualisieren (Upgrade/Downgrade). ).
require ist flexibler. Wenn es nicht installiert ist, wird es installiert. Wenn es installiert ist, wird es entsprechend der übergebenen Versionsnummer aktualisiert oder herabgestuft.
Update kann keine neue Versionsnummer in der Befehlszeile übergeben. Sie müssen die neue Versionsnummer manuell in Composer.json angeben und dann den Update-Befehl ausführen.
composer require google/protobuf --ignore-platform-reqs -vvv
Verwandte Empfehlungen: [Komponisten-Tutorial]
Befehl erforderlich
Beispiel
// 安装包 composer require hashids/hashids:2.0.0 // 已安装 升级 composer require hashids/hashids:3.0.0 // 已安装 降级 composer require hashids/hashids:2.0.4
Update-Befehl
Der Update-Befehl kann die Paketversionsnummer nicht in der Befehlszeile angeben und Sie müssen die Datei „composer.json“ manuell ändern
// 安装包 composer require hashids/hashids:2.0.0
Falsche Verwendung
composer update hashids/hashids:3.0.0
Beispiel für die korrekte Verwendung
vim composer.json "require": { "hashids/hashids": "3.0.0" }, :wq #升级到3.0.0 composer update hashids/hashids vim composer.json "require": { "hashids/hashids": "2.0.4" }, :wq #降级到2.0.4 composer update hashids/hashids
Wenn wir gleichzeitig die Versionsnummern mehrerer Pakete bearbeiten und aktualisieren, können wir die Methode
composer update package1 composer update package2 composer update package3
nicht verwenden, um sie nacheinander zu aktualisieren. Da Composer die Integrität der Konfigurationsdatei JSON vs. Lock überprüft, haben Sie angegeben, dass ich A aktualisieren soll, aber die Version von B ist in JSON und Lock inkonsistent, aber Sie möchten nicht, dass ich sie aktualisiere .
Derzeit können Sie Composer Update nur zum globalen Aktualisieren von Abhängigkeiten verwenden. Beachten Sie, dass es sich um einen Aktualisierungsvorgang für globale Pakete handelt, die Sie nicht geändert haben, aber einen Versionsnummernbereich verwenden aktualisiert. Bitte mit Vorsicht verwenden!
Installationsbefehl
install kann verwendet werden, um Abhängigkeiten zum ersten Mal nach der Projektinitialisierung zu installieren, und die Versionsnummer in composer.lock
wird zuerst gelesen, um sicherzustellen, dass sie vorhanden ist größtmögliche Konsistenz der Paketversionen bei der kollaborativen Entwicklung.
Der in Composer.lock vorhandene Paketversionseintrag entspricht der Ausführung von composer require packageName:versionNo
, und das Fehlen davon entspricht der Ausführung von composer update packageName with versionRule in composer.json
.
Wenn wir an der Entwicklung zusammenarbeiten, installiert A lokal ein neues Abhängigkeitspaket oder aktualisiert ein Abhängigkeitspaket, das in „composer.lock/composer.json“ geschrieben wird, A lädt es in das Warehouse hoch und B ruft es ab Lokal sollte eine Composer-Installation ausgeführt werden, um die Versionsänderungen des Teams zu synchronisieren.
Daher empfehlen wir, während der kollaborativen Entwicklung gleichzeitig composer.lock/composer.json
in das Remote-Warehouse hochzuladen.
Versionsnummernbereich
大于/大于等于:>1.2.3 >=1.2.3 小于/小于等于:<1.2.3 <=1.2.3 确切的版本号:1.2.3 ~1.2.3: 1.2.3 <= version < 1.3 ^1.2.3: 1.2.3 <= version < 2.0 { "php": ">=7.0", "ext-swoole": ">=4.0.0", "lib-curl": ">=7.29.0" }
Das obige ist der detaillierte Inhalt vonComposer aktualisiert bestimmte Abhängigkeitspakete. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!