Wann verwenden Sie das Garn über NPM? Was sind die Unterschiede?
Was sind die Unterschiede zwischen Garn und NPM?
Zum Zeitpunkt des Schreibens dieser Frage kann ich nur finden, einige Artikel im Internet zu zeigen, was das Garn equvalent der NPM-Befehl wie diese.
Haben Sie die gleichen Funktionalitäten (ich weiß Garn nicht die lokale Zwischenspeicherung und sieht aus wie Sie nur brauchen, um ein Paket herunterzuladen, das einmal), aber andere als diese gibt es irgendwelche Vorteile für den Wechsel von NPM zu Garn?
- Das ist keine schlechte Frage und nicht verdient einen downvote. Das heißt, es muss konkretisiert ein bisschen, damit es eine wirklich gute Frage.
- Eine schnelle Google auftaucht, dieser. Ich glaube, dies ist wahrscheinlich zu breites/nicht konstruktiv auf StackOverflow und könnte mit ein bisschen mehr Forschung, dennoch angezeigt.
- Ich bin mir nicht sicher, warum ich habe unten gewählt! Ich will die Antwort wissen und konnte nicht finden es überall im internet, also gefragt!
- Sie bekam nach unten gestimmt, denn dies ist stackoverflow. Sie können nicht sagen, dass Sie auf google oder die Suchfunktion verwenden, oder verbessern Sie Ihre post so, dass wir eine bessere chance haben, zu beantworten.
- als ich suchte, sah ich den Spickzettel aber das ist nicht die Antwort auf meine Frage! Ich möchte wissen, die Unterschiede zwischen den beiden und nicht die Unterschiede zwischen den Befehlen. Bitte Lesen Sie meine erste Frage
- Sie Bearbeiten sollte Ihre Frage mehr Einzelheiten, und zeigen, was Sie bereits erforscht. Welche Art von Differenzen sind Sie auf der Suche zu finden? Versuchen Sie, herauszufinden, wie die Bibliotheken umgesetzt werden? Versuchen Sie, herauszufinden, wie unterscheiden Sie sich bei der Annäherung an das problem? Wenn du deine Frage präziser, es kann gut sein, je nachdem, was Sie gefragt haben. (Je nachdem, was du fragst, können die Informationen bereits verfügbar auf Google.)
- wenn Sie gezeigt hatte, dass Sie gelesen hatte, aber es war nicht relevant sind, wäre es hilfreich gewesen, um zu zeigen Forschung. Als ich aber sagen, Vergleich Fragen sind in der Regel nicht groß, für Q&A, und es könnte besser gewesen, wenn Sie würde umrahmte die Frage anders.
- komisch, die Leute sagen, google es; ich fand Ihre Frage zu google... die Menschen in stackoverflow wie übertrieben der Regel Dinge aus, als wenn es wäre Ihnen wichtiger, denke ich.
Du musst angemeldet sein, um einen Kommentar abzugeben.
UPDATE: März 2018 (bisschen spät...)
Seit der version 5,
npm
package-lock.json
, dass Updates, die Ihre gesamte Abhängigkeitsstruktur viel die gleiche Weise, wie das Garn (oder andere) Verriegelung hat,--save
ist nun stillschweigend fürnpm i
npm 5.7.0 vorhanden weitere eingeführt die
npm ci
Befehl zum installieren von Abhängigkeiten schneller in einer continuous integration Umgebung, indem Sie nur die Installation von Paketen finden Sie in derpackage-lock.json
(meldet einen Fehler, wenn diepackage-lock.json
undpackage.json
sind nicht synchronisiert).Persönlich, ich benutze immer noch
npm
.Original
Ich bin ungern zitiere direkt aus Google docs, aber Sie tun einen große job zu erklären, warum, kurz und prägnant genug, dass ich nicht sehen, wie man weiter zusammenfassen der Ideen.
Weitgehend:
Wissen Sie immer, Sie sind immer die gleiche Sache auf jede Entwicklung
Maschine
Es paralellizes Operationen, die
npm
nicht, undMacht es mehr effiziente Nutzung des Netzes.
Kann es effizienter zu machen die Verwendung von anderen system-Ressourcen (wie RAM) als gut.
Was sind Leute, die Produktion Erfahrungen mit ihm? Wer weiß, es ist ein Kleinkind an die Allgemeine öffentlichkeit.
TL;DR von Yehuda Katz:
Schönen blog-post
"NPM vs Garn Cheat Sheet" von Gant Laborde
Etwas längere version aus dem Projekt:
Und von die README-Datei.md:
--flat
option, welche Kräfte ein real flache Struktur, wo nur eine version von jeder Abhängigkeit installiert werden darf, aber was ist das default-Verhalten auf dieser? Danke.install -g
.Verwenden PNPM
Vorteile
PNPM
überYarn
undNPM
pnpm
nutzt Hardlinks und symlinks zu speichern eine version von einem Modul immer nur einmal auf einer Festplatte. Bei der Verwendung von npm oder Garn-zum Beispiel, wenn Sie haben 100 Projekte mit der gleichen version von lodash, Sie haben 100 Kopien von lodash auf der Festplatte. Mit pnpm, lodash werden gespeichert in einem einzigen Ort auf der Festplatte, und einen hard-link wird es in den node_modules, wo es installiert werden soll.Als Ergebnis sparen Sie Gigabyte Speicherplatz auf Ihrer Festplatte und Sie haben eine viel schnellere Installationen! Wenn Sie möchten mehr details zu den einzigartigen node_modules Struktur, die pnpm schafft und warum es funktioniert einwandfrei mit der Node.js ökosystem, das Lesen dieses kleinen Artikels: Warum sollten wir nutzen pnpm?
Wie zu installieren?
nun installieren Paket
Hier ist ein Fortschritt-Balken mit der installation Zeit, die
NPM
,YARN
undPNPM
(kürzer-bar ist besser)Klicken Sie für die Vollständige überprüfung Benchmark
für weitere Informationen, besuchen Sie https://www.npmjs.com/package/pnpm
Wenn Sie ein Paket installieren mit Garn (mit Garn hinzufügen packagename), es stellen Sie das Paket auf Ihre Festplatte. Während der nächsten installieren, wird dieses Paket verwendet werden, anstatt das senden einer HTTP-Anforderung, um die tarball-Datei aus der Registrierung.
Garn kommt mit einem handy Lizenz checker, die sich wirklich mächtig in Fall müssen Sie die Lizenzen für alle Module, die Sie abhängen.
Wenn Sie auf proprietäre software, es spielt eigentlich keine Rolle, welches Sie benutzen. Mit npm können Sie verwenden npm-shrinkwrap.js können Sie zwar nutzen, Garn.Schloss mit Garn.
Für mehr Informationen Lesen Sie bitte den folgenden blog
https://blog.risingstack.com/yarn-vs-npm-node-js-package-managers/