Umstellung von npm

, Author

Die Umstellung von npm sollte für die meisten Benutzer ein recht einfacher Prozess sein. Yarn verwendet das gleiche package.json Format wie npm und kann jedes Paket aus der npm Registry installieren.

Wenn du Yarn in deinem bestehenden npm Projekt ausprobieren möchtest, dann führe einfach folgendes aus:

yarn

Dies wird deinen node_modules Ordner mit dem Auflösungsalgorithmus von Yarn anordnen, der kompatibel mit dem Algorithmus von thenode.js Modulauflösungsalgorithmus kompatibel ist.

Wenn Sie einen Fehler erhalten, überprüfen Sie bitte, ob ein Problem besteht oder melden Sie es im Yarn Issue Tracker.

Wenn Sie entweder yarn oder yarn add <package> ausführen, wird Yarn eine yarn.lock Datei im Stammverzeichnis Ihres Pakets erzeugen. Sie brauchen diese Datei nicht zu lesen oder zu verstehen – checken Sie sie einfach in die Versionskontrolle ein. Wenn andere Leute anfangen, Yarn anstelle von npm zu benutzen, wird die yarn.lock-Datei sicherstellen, dass sie genau die gleichen Abhängigkeiten erhalten wie Sie.

In den meisten Fällen wird die Ausführung von yarn oder yarn add zum ersten Mal einfach funktionieren. In einigen Fällen sind die Informationen in einer package.json-Datei nicht explizit genug, um Abhängigkeiten zu eliminieren, und die deterministische Art, mit der Yarn Abhängigkeiten auswählt, führt zu Abhängigkeitskonflikten. Dies ist besonders wahrscheinlich in größeren Projekten, wo manchmal npm install nicht funktioniert und die Entwickler häufig node_modules entfernen und von Grund auf neu erstellen. Wenn das passiert, versuchen Sie npm zu verwenden, um die Versionen der Abhängigkeiten deutlicher zu machen, bevor Sie zu Yarn konvertieren.

Ab Yarn 1.7.0 können Sie Ihren package-lock.json Status, der mit npm erzeugt wurde, in Yarn importieren, indem Sie yarn import verwenden.

Andere Entwickler im Projekt können weiterhin npm verwenden, so dass Sie nicht alle in Ihrem Projekt dazu bringen müssen, zur gleichen Zeit zu konvertieren. Die Entwickler, die yarn verwenden, werden alle genau die gleiche Konfiguration erhalten, und die Entwickler, die npm verwenden, können leicht unterschiedliche Konfigurationen erhalten, was das beabsichtigte Verhalten von npm ist.

Wenn Sie sich später entscheiden, dass Yarn nichts für Sie ist, können Sie einfach zu npm zurückkehren, ohne besondere Änderungen vorzunehmen. Sie können Ihre alte yarn.lock-Datei löschen, wenn niemand im Projekt mehr Yarn benutzt, aber das ist nicht notwendig.

Wenn Sie jetzt eine npm-shrinkwrap.json-Datei benutzen, sollten Sie sich darüber im Klaren sein, dass Sie am Ende einen anderen Satz von Abhängigkeiten haben könnten. Yarn unterstützt keine npmshrinkwrap-Dateien, da sie nicht genügend Informationen enthalten, um den deterministischen Algorithmus von Yarn zu unterstützen. Wenn Sie eine Shrinkwrap-Datei verwenden, kann es einfacher sein, alle an dem Projekt arbeitenden Personen gleichzeitig auf Yarn umzustellen. Entfernen Sie einfach Ihre bestehende npm-shrinkwrap.json-Datei und checken Sie die neu erstellte yarn.lock-Datei ein.

CLI-Befehle im Vergleich

npm (v5) Yarn
npm install yarn add
(N/A) yarn add --flat
(N/A) yarn add --har
npm install --no-package-lock yarn add --no-lockfile
(N/A) yarn add --pure-lockfile
npm install --save yarn add
npm install --save-dev yarn add --dev
(N/A) yarn add --peer
npm install --save-optional yarn add --optional
npm install --save-exact yarn add --exact
(N/A) yarn add --tilde
npm install --global yarn global add
npm update --global yarn global upgrade
npm rebuild yarn add --force
npm uninstall yarn remove
npm cache clean yarn cache clean
rm -rf node_modules && npm install yarn upgrade
npm version major yarn version --major
npm version minor yarn version --minor
npm version patch yarn version --patch

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.