Sie können Ihre lokale Instanz, indem Sie die folgende Zeile in cmd ausführen.
Jedes der Projekte, an denen wir arbeiten, hat unterschiedliche Pakete sowohl für die Laufzeit des Pakets als auch für Build/Dev-Tools.
Da es in jedem Projekt Versionsbeschränkungen gibt, würde die globale Installation von Version x eines Pakets (das über die Befehlszeile ausgeführt würde) zu Problemen führen. Wir installieren alle Tools in jedem Paket. Viel einfacher in den entsprechenden composer.json/package.json Dateien zu definieren.
Das Ausführen der CLI-Tools ist jedoch ein Problem, wenn Sie dem Befehl ständig einen zusätzlichen Pfad hinzufügen müssen.
Zu diesem Zweck haben wir für das Team empfehlen, dass die folgenden Pfade zu Ihrem $PATH
in der entsprechenden .bashrc hinzugefügt werden (oder gleichwertig):
./vendor/bin:./node_modules/.bin
(EDIT: Für Windows, die Pfade wäre .\vendor\bin;.\node_modules\.bin;
)
So, während in Projekt X, haben wir Zugriff auf die CLI-Tools für dieses Projekt. Wechseln Sie zu Projekt Y, und wir bekommen diese Projektwerkzeuge.
Sicher, du wirst Duplikate bekommen, aber jedes Projekt wird von verschiedenen Teams gepflegt (und einige Leute sind in mehreren Teams), also ist es wieder ein Problem, eine Version im globalen Setup zu haben.
Was wäre der Punkt bei der lokalen Verwendung von Laube wie Var Bower = erfordern ('Bower'); ? – Rigil
Nun, Bower ist ein schlechtes Beispiel, da ich glaube nicht, dass sie eine API durch Javascript offenbaren, aber '' express''' ist etwas, das ich in einem Projekt verwendet habe, das eine Befehlszeilenschnittstelle sowie eine Bibliothek hat Sie verwenden lokal in Ihren js-Dateien. (Siehe meine Bearbeitung für hilfreiche Dokumentation) – Jimi
Es ist auch nützlich, weil Befehle im 'scripts' Block in' package.json' lokale Befehle automatisch auflösen. Das bedeutet, dass Sie ein Skript haben könnten, das von der Laube abhängt, ohne eine undokumentierte Abhängigkeit von der Laube zu haben. – loganfsmyth