November 2022

Dateien an einem Ort verwalten und mittels gget verteilen

Robert Stoll

gget -- g(it)get -- ist ein bash basiertes Tool, welches Dateien von git Repositories herunterlädt und mittels GPG verifiziert. Es ist unter Apache Licence 2.0 lizenziert.

Vielleicht bist du ja in derselben Situation wie wir waren (nun ja... immer noch ein wenig sind). Viele Dateien werden über mehrere Projekte und Repositories dupliziert geführt. Angefangen bei der Lizenz-Datei, dem CODE_OF_CONDUCT.md, über Konfigurationsdateien (wie beispielsweise .editorconfig), hin zu Workflow-Dateien und Scripts. Einige von ihnen wirst du nie mehr ändern (zumindest denkst du das zum jetzigen Zeitpunkt), andere änderst du vielleicht einmal pro Jahr (z.B. das Jahr im Copyright anpassen) und wiederum andere änderst du mit Sicherheit regelmässiger.

In all diesen Situationen macht es Sinn, die Dateien an einem zentralen Ort (sprich Repository) zu pflegen, zu verwalten und sie auf irgend eine Art zu verteilen. gget kann als leichtgewichtiger Packet-Manager angesehen werden, allerdings ohne Unterstützung für Abhängigkeiten, dafür mit einem starken Sinn für Dateien-Integrität. Du kannst jedes beliebige git Repository mittels gget remote add als Quelle verwenden und dann mittels gget pull eine oder mehrere Dateien aus diesem Repository in dein Repository herunterladen. Ob du diese Dateien dann committest oder sie auf der .gitignore-Liste landen und deine Mitstreiter:innen sie entsprechend via gget re-pull herunterladen, ist dir überlassen.

Mit gget update lassen sich bereits heruntergeladene Dateien auf die neuste oder eine spezifizierte Version aktualisieren. Ein entsprechender GitHub workflow (welcher du natürlich mit gget in ein Repository holst) übernimmt die periodische Überprüfung nach neueren Versionen und erstellt einen entsprechenden Pull-Request.

Wir hoffen gget wird die Verteilung von Dateien auch für dich erleichtern und freuen uns auf dein Feedback.

Technologien

Bash / Shell
Loading...
Loading...
© 2023 Tegonal GenossenschaftImpressum & Datenschutz