Ein Paketmanager holt fremden Code in ein Projekt, hält ihn aktuell und führt Buch darüber, was in welcher Fassung eingebunden ist.
- Paketmanager
Ein Werkzeug, das Pakete aus einem Verzeichnis lädt, ihre eigenen Abhängigkeiten auflöst und festhält, welche Fassung installiert ist.
Beispiel: „Ein Befehl des Paketmanagers genügt, und die Bibliothek samt allem, was sie braucht, liegt im Projekt.“Auch: Package Manager. Im Webumfeld sind npm für JavaScript und Composer für PHP die verbreitetsten.
Zwei Dateien, die alles festhalten
Die eine nennt, was du haben wolltest, meist mit einem Spielraum wie „Version 4, neuere Fehlerbehebungen erlaubt“. Die andere hält fest, was daraus tatsächlich installiert wurde, bis auf die letzte Stelle genau.
Die zweite Datei gehört in die Versionsverwaltung, und sie ist der Grund, warum bei allen Beteiligten dasselbe läuft. Ohne sie installiert jeder eine andere Mischung, und Fehler lassen sich nicht mehr nachstellen.
Aktualisieren ohne Überraschungen
Der Paketmanager zeigt, welche Pakete veraltet sind und welche Aktualisierung verträglich wäre. Was innerhalb derselben Hauptversion bleibt, lässt sich meist gefahrlos einspielen; ein Sprung der ersten Stelle verlangt einen Blick in die Änderungsliste.
Dazu kommt die Sicherheitsprüfung. Beide Werkzeuge melden, wenn ein eingebundenes Paket eine bekannte Lücke hat. Dieser Befehl gehört in die laufende Pflege und nicht in den nächsten Relaunch.
Was nicht in die Versionsverwaltung gehört
Das Verzeichnis mit den heruntergeladenen Paketen selbst. Es lässt sich aus den beiden Dateien jederzeit wiederherstellen und umfasst oft Zehntausende Dateien.