Warum müssen wir den Schluck global und lokal installieren?
2 Handbücher über gulp sagen, dass ich installieren müssen ersten Schluck weltweit (mit g-flag) und man dann mehr Zeit vor Ort. Warum brauche ich diese?
InformationsquelleAutor der Frage Stepan Suvorov | 2014-03-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beim installieren ein tool weltweit die verwendet werden von einem Benutzer als ein Befehlszeilen-Dienstprogramm überall, auch außerhalb des node-Projekte. Global installiert für einen Knoten Projekt sind badweil Sie die Bereitstellung schwieriger.
npm 5.2+
Den
npx
utility Bundle mitnpm
5.2
löst dieses problem. Mit ihm können Sie aufrufen lokal installierten Dienstprogramme wie weltweit installierten Dienstprogramme (aber Sie müssen beginnen Sie den Befehl mitnpx
). Zum Beispiel, wenn Sie wollen, aufrufen einer lokal installierteneslint
Sie tun können:npm < 5.2
Beim Einsatz in einer
script
- Feld des Pakets.jsonnpm
suchtnode_modules
für das Werkzeug sowie die weltweit installierte Module, so dass die lokale Installation ist ausreichend.So, wenn Sie glücklich sind mit (in Ihrem Paket.json):
etc. und läuft mit
npm run test
dann müssen Sie sich nicht der globalen installieren überhaupt.Beide Methoden sind nützlich für Leute die mit Ihrem Projekt seit
sudo
ist nicht erforderlich. Es bedeutet auch, dassgulp
werden aktualisiert, wenn das die version ist, stieß in das Paket.json, damit jeder mit der gleichen version von gulp bei der Entwicklung mit Ihrem Projekt.Nachtrag:
Scheint es, dass die gulp hat einige ungewöhnliche Verhalten, wenn sich weltweit im Einsatz. Als global installieren, gulp sucht einen lokal installierten gulp, die Kontrolle an. Daher ist eine gulp global installieren erfordert einen Schluck lokalen Installation arbeiten. Die Antwort oben immer noch steht, obwohl. Lokale Installationen sind immer vorzuziehen global installiert.
InformationsquelleAutor der Antwort qubyte
Können Sie den link der weltweit installierten
gulp
lokal mitInformationsquelleAutor der Antwort Berislav Lopac
TLDR; Hier ist warum:
Im wesentlichen, wenn Sie installieren
gulp
lokal das script nicht in IhremPATH
und so kann man nicht nur gebengulp
und erwarten, dass die shell finden Sie den Befehl. Durch die Installation weltweit zu dengulp
Skript wird in denPATH
weil die Globalenode/bin/
Verzeichnis ist wahrscheinlich auf Ihrem Weg.Respektieren Sie Ihre lokale Abhängigkeiten allerdings
gulp
Ihre lokal installierte version von sich selbst zu führengulpfile.js
.InformationsquelleAutor der Antwort Dwayne Crooks
Die Frage "Warum brauchen wir installieren gulp Global und lokal?" kann unterteilt werden in die folgenden zwei Fragen:
Warum muss ich installieren Schluck lokal, wenn ich es schon installiert weltweit?
Warum muss ich installieren, gulp Global, wenn ich bereits installiert haben, können Sie es lokal?
Mehrere andere zur Verfügung gestellt haben ausgezeichnete Antworten zu diesen Fragen in der isolation, aber ich dachte, es wäre von Vorteil für die Konsolidierung der Informationen in einer einheitlichen Antwort.
Warum muss ich installieren Schluck lokal, wenn ich es schon installiert weltweit?
Die Gründe für die Installation von gulp lokal besteht aus mehreren Gründen:
Warum muss ich installieren, gulp Global, wenn ich bereits installiert haben, können Sie es lokal?
Zu vermeiden, installieren Sie lokal verwenden können
npm link [package]
aber der link-Befehl als auch dieinstall --global
Befehl scheint es nicht zu unterstützen--save-dev
die option, die bedeutet, dass es nicht erscheinen, um eine einfache Möglichkeit zum installieren von gulp Global und dann einfach hinzufügen was auch immer version, die zu deinem lokalen Paket.json-Datei.Letztlich glaube ich, dass es mehr Sinn macht, haben die Möglichkeit, mit globalen Modulen zu vermeiden, duplizieren der installation von gängigen tools für alle Ihre Projekte, vor allem im Fall von Entwicklungs-tools wie grunt, gulp, jshint, etc. Leider scheint es, dass Sie am Ende kämpfen die Werkzeuge, die ein bisschen, wenn Sie gegen den Strich zu gehen.
InformationsquelleAutor der Antwort Derek Greer
Technisch brauchen Sie nicht, um es zu installieren Global, wenn die
node_modules
Ordner in Ihrer lokalen installation in IhremPATH
. In der Regel ist dies nicht eine gute Idee.Alternativ, wenn
npm test
Referenzengulp
dann können Sie geben Sie einfachnpm test
und es wird führen Sie den lokalen Zug.Habe ich nie installiert gulp Global -- ich denke, es ist schlechte form.
InformationsquelleAutor der Antwort robrich
Ich bin mir nicht sicher, ob unser problem war, die direkt im Zusammenhang mit der Installation von gulp nur lokal. Aber wir hatten zu installieren, eine Reihe von Abhängigkeiten selbst. Diese führen zu einer "riesigen" Paket.json und wir sind nicht sicher, ob es wirklich eine gute Idee zu installieren, zu schlucken, nur lokal. Wir hatten zu tun, weil unsere build-Umgebung. Aber ich würde nicht empfehlen die Installation von gulp nicht Global, wenn es nicht absolut notwendig ist. Wir standen vor ähnlichen Problemen wie im folgenden beschrieben blog-Beitrag
Keines dieser Probleme ergeben sich für unsere Entwickler, die auf Ihren lokalen Maschinen, weil Sie alle installierten gulp Global. Auf dem build-system, das wir hatten die beschriebenen Probleme. Wenn jemand Interesse hat, könnte ich tiefer in dieses Problem. Aber jetzt wollte ich nur erwähnen, dass es nicht einen einfachen Weg zu installieren, zu schlucken, nur lokal.
InformationsquelleAutor der Antwort tschoartschi