Merge Konflikte in composer.lock lösen: composer update nothing

veröffentlicht von vurt am Mo., 25.11.2019 - 16:58

Bei Drupal 8 Projekten wir die Datei composer.lock immer zum Git Repository hinzugefügt. Wenn mehre Entwicklerinnen gleichzeitig Module installieren oder updaten kann es zu Merge Konflikten in dieser Datei kommen. Durch die Struktur dieser Datei ist es nicht sinnvoll diese von Hand zu mergen.

Eine Möglichkeit das Problem zu beheben ist der Aufruf:

composer install

Dadurch wird die Datei composer.lock neu erzeugt (nach dem Stand von composer.json). Leider werden damit aber auch alle Module auf einen aktuellen Stand gebracht.

Ist das nicht möglich oder erwünscht, kann folgender Befehl hilfreich sein:

composer update nothing

Er erzeugt nur eine neue Version von composer.lock und aktualisiert die Drupal Autoload Dateien – ohne weitere Nebeneffekte. Komischerweise ist diese sinnvolle Option nicht in der offiziellen Dokumentation zu finden: https://getcomposer.org/doc/03-cli.md#update-u

Ergänzung

Es gibt noch folgende, ähnlich klingende Möglichkeit:

composer update –lock

Das ist aber nicht das gleiche wie composer update nothing! composer update –lock „repariert“ nur die Lock Datei indem die Checksummen neu berechnet werden, Konflikte kann man damit also nicht beheben.

Neuen Kommentar hinzufügen