In dem Blog-Beitrag, in dem Garn angekündigt wird (ein alternativer npm-Client) heißt es: "Der einfachste Weg, um anzufangen, ist, npm install -g yarn
Auszuführen." Wenn Sie jedoch zu die Seite "Garn installieren" in den zugehörigen Dokumenten wechseln, wird "npm install yarn" auf keiner der plattformspezifischen Installationsseiten aufgeführt und nur als dritte von drei angeboten Optionen auf der Seite "Alternativen". Wenn Sie npm install
Garnieren, wird die Warnung "Es wird empfohlen, Yarn mit der für Ihre Umgebung typischen Installationsmethode zu installieren." Ausgegeben. Meine Frage ist also, ob npm install
Die einfachste Installationsmethode ist. Warum wird sie in ihren Dokumenten nicht empfohlen? Gibt es Nachteile bei der Installation von Garn mit npm
?
Laut den Betreuern des Yarn-Projekts kann die Installation von Yarn über npm widerspricht den Zielen des Projekts Probleme verursachen und ist im Allgemeinen schlechter als plattformspezifische Installationsmethoden.
Vorteile gegenüber der empfohlenen plattformspezifischen Installation:
Die Yarn-Teams halten npm für unsicher und unzuverlässig. Aus dem Abschnitt "Über Npm installieren" auf Yarn's Seite "Installation" :
Hinweis: Die Installation von Garn über npm wird im Allgemeinen nicht empfohlen. Die Installation von Yarn mit npm ist nicht deterministisch, das Paket ist nicht signiert, und die einzige durchgeführte Integritätsprüfung ist ein grundlegender SHA1-Hash, der ein Sicherheitsrisiko darstellt, wenn systemweite Apps installiert werden.
Aus diesen Gründen wird dringend empfohlen, Yarn mit der für Ihr Betriebssystem am besten geeigneten Installationsmethode zu installieren.
Das Ausführen von Yarn, einem separaten Paketmanager-Dienstprogramm, über npm kann zu Randproblemen führen (siehe issue 2072 ).
Vorteile für npm install -g yarn
:
npm install -g yarn
)npm update -g yarn
) yarn self-update
) aber es scheint kaputt zu seinnvm
verwendenDie Argumente des Systempaket-Managers für die empfohlene Installation stören sich in der Regel, wenn Sie auf Windows verweisen, wo es keinen offiziellen Paket-Manager gibt (es sei denn, Sie zählen Windows Update). Außerdem sind Windows-Paketmanager wie Chocolatey häufig nicht für automatische Updates konfiguriert.
Ich bin mir nicht sicher, ob ich der Entscheidung des Yarn-Teams in dieser Hinsicht vollkommen zustimme, aber sie machen einige faire Punkte. Das Yarn-Projekt ist noch jung und wenn es ein Ersatz für npm werden soll, ist es nicht sinnvoll, npm als Hauptinstallateur zu fördern.
Unabhängig davon scheinen Installationen über npm in den meisten Fällen vorerst einwandfrei zu funktionieren.
Quellen:
Es gibt keinen sichtbaren Nachteil bei der Installation von Yarn durch npm
. Tatsächlich habe ich mich aus folgenden Gründen für diese Methode entschieden:
npm i --global yarn
und Sie können npm
buchstäblich durch yarn
auf Ihrer Konsole sofort ersetzen.nvm
verwenden und unterschiedliche Code-Projekte für jede NodeJS-Version verwalten, können Sie Yarn auf einer Version installieren und nicht auf der anderenDa npm
nicht plattformspezifisch ist und auf fast jedem System ausgeführt wird, wird es als Alternative aufgeführt. Es gibt keinen Vorteil oder Nachteil gegenüber den plattformspezifischen Installationen. Der Unterschied wäre der Installationsort, aber alle Methoden machen den globalen Befehl yarn
für Ihre CLI verfügbar.
Ich würde argumentieren, dass sie es als "der einfachste Weg" verzeichneten, weil die meisten Leute bereits sehr vertraut mit npm
sind.