So installieren Sie globale Pakete mit Garn

12

yarn install -h weist darauf hin, dass die Option -g (global) DEPRECATED ist. Wie soll ich angeben, dass ich eine Reihe von Paketen (aus package.json / yarn.lock -Dateien) global installieren möchte?

Optionen, die ich gesehen habe:

  • yarn global [command] hat Dinge wie ls und add , aber nicht install . add funktioniert nur mit bestimmten Paketnamen, wenn ich das richtig verstehe. Ich habe bereits meine yarn.lock -Datei bereit, ich möchte mich nicht in der Befehlszeile wiederholen.
  • yarn global add jedes Paket einzeln. Jetzt wäre meine Liste der Pakete zwingend erforderlich statt deklarativ.

Insbesondere möchte ich eine ausführbare Datei aus einem dieser Pakete verwenden.

    
jleeothon 10.05.2017, 14:19
quelle

2 Antworten

11
  

Wie soll ich angeben, dass ich eine Reihe von Paketen (aus package.json / gam.lock-Dateien) global installieren möchte?

Sie nicht . Es wird davon abgeraten, global zu installieren, und es gibt sehr wenige Situationen, in denen es notwendig oder sogar hilfreich ist.

Wie in der Dokumentation erwähnt:

  

Für die große Mehrheit der Pakete wird es als eine schlechte Praxis betrachtet, globale Abhängigkeiten zu haben, weil sie implizit sind. Es ist viel besser, all Ihre Abhängigkeiten lokal hinzuzufügen, so dass sie explizit sind und jeder, der Ihr Projekt verwendet, erhält die gleichen Abhängigkeiten.

     

Wenn Sie versuchen, ein CLI-Tool mit einer Ablage zu verwenden, können Sie auf diese in Ihrem Verzeichnis ./node_modules/.bin zugreifen.

Wenn es Situationen gibt, in denen Sie global installieren möchten, verwenden Sie yarn global add , aber erwarten Sie nicht, eine große Liste von Abhängigkeiten global zu installieren - es ist schwierig, zu tun von Entwurf , weil es keine gute Idee ist.

Stattdessen:

  • installiere alles lokal, so dass jedes Projekt isoliert ist
  • Rufen Sie Binärdateien von ./node_modules/.bin , wo möglich,
  • auf
  • vermeiden Sie globale Installationen - sie sind eine Annehmlichkeit, aber keine, auf die Sie sich verlassen sollten.
Aurora0001 10.05.2017, 19:57
quelle
3

Für die Interessierten gibt es eine Möglichkeit, globale Anwendungen zu installieren und zu verwalten, die über Garn installiert werden.

Erstellen Sie zuerst ein Verzeichnis, das die Anwendungen enthält, zum Beispiel ~/.yarn-global :

%Vor%

Dann installieren Sie Ihre Anwendung von hier:

%Vor%

Öffnen Sie abschließend Ihre Profildatei, d. h. .bashrc oder .bash_profile und fügen Sie den Pfad zum Verzeichnis bin hinzu:

%Vor%

Ab jetzt ist jede Anwendung, die Sie in diesem Verzeichnis installieren, von überall in Ihrer Shell verfügbar.

Sobald dies erledigt ist, können Sie sogar ein yarn-global Utility-Skript erstellen, das nur in diesem .yarn-global-Verzeichnis funktioniert. Zum Beispiel:

%Vor%

Und der Inhalt des Skripts wäre:

%Vor%

Nein, Sie können yarn-global add someapp , yarn-global upgrade someapp usw. tun.

    
this.lau_ 19.10.2017 22:19
quelle

Tags und Links