Im Wesentlichen und mit viel Hand-waving Weg von Details, Gulp und Grunt sind beide Systeme für die Automatisierung von Serien von voneinander abhängigen Aufgaben, häufig verwendet für die Definition der "Build" Ihres Projekts, wie eine moderne Übernahme das make
Werkzeug. In der Regel verwendet ein Projekt eines oder das andere, aber nicht beide gleichzeitig (für die gleichen Teile sowieso).
Bower ist anders, und häufig mit Gulp oder Grunt verwendet: Es ist ein Paket-Manager für clientseitige Bibliotheken, so dass es einfach, diese libs auf dem neuesten Stand zu halten, sie und ihre Abhängigkeiten in einer standardisierten Art und Weise zu spezifizieren her.
Der Gulp Einzeiler von ihrer Website:
Automate und verbessern Ihren Workflow
Die Grunt Einzeiler von ihnen:
Die JavaScript-Task-Runner
Und Bower:
Ein Paket-Manager für das Web
Warum & wenn sie benutzen?
ich glaube, die über dem für Gulp und Grunt umfasst: Wenn Sie Aufgaben, die Sie (wie den Aufbau der Release-Version einer Website mit minification, Verkettung, Kompression, usw .; oder gerade Dateien für Änderungen automatisieren möchten und wenn sie sich ändern, um die schnelle Entwicklung zu unterstützen, können Sie Gulp und Grunt dafür verwenden.
Aber es ist nicht nur Builds. Sie können Gulp und Grunt für jede Reihe von Aufgaben verwenden, die Sie automatisieren müssen.
Bower ist nützlich für die Verwaltung der clientseitigen Bibliotheken in Ihren Projekten. Sie können Bower verwenden, um beispielsweise die neueste Version von Bootstrap zu installieren, und die relevanten Dateien werden an Standardstandorten in Ihrem Projekt abgelegt. Bower kann diese Dateien aktualisieren, wenn ein neuerer Bootstrap herauskommt. Wenn eine Bibliothek von anderen Bibliotheken abhängt (JS von Bootstrap basiert beispielsweise auf jQuery), hilft Bower beim Verwalten dieser Struktur. Es gibt hilfreiche Aufgaben für Grunt (und ich nehme an, für Gulp), die sogar das Hinzufügen der Skript- und Link-Tags zu Ihrem HTML für diese Bibliotheken automatisieren können, indem Sie einen Platzhalter in Ihrer Quell-HTML haben, der im Grunde sagt: "Put the Bower libs hier."
warum 'sudo'?Sieht für mich nicht nach einer guten Idee aus –
@WalterTross Manchmal sind '' 'npm'''' Berechtigungen [geschraubt] (https://docs.npmjs.com/getting-started/fixing-npm-permissions) und' ' 'gulp''' Aufgabe kann npm ausgeführt werden ([ex] (https://www.npmjs.com/package/gulp-npm-run)) –
@WalterTross' sudo' ist für Mac Benutzer ich denke. – Santosh