Dependabot auf GitHub aktivieren: Der ultimative 2025 Easy Guide

Melden

Hier ist ein aktueller und leicht verständlicher Guide, um Dependabot im Jahr 2025 auf GitHub optimal zu nutzen.


In der modernen Softwareentwicklung hängen fast alle Projekte von externen Bibliotheken ab. Diese aktuell und sicher zu halten, ist manuell kaum zu bewältigen. Dependabot ist ein kostenloses Tool von GitHub, das diese Aufgabe automatisiert: Es scannt deine Abhängigkeiten auf Sicherheitslücken und erstellt automatisch Pull Requests für Updates.

In dieser Anleitung lernst du, wie du Dependabot in weniger als 5 Minuten einrichtest.


Schritt 1: Sicherheits-Alerts aktivieren

Zuerst musst du GitHub erlauben, dein Repository auf bekannte Schwachstellen (CVEs) zu scannen.

  1. Öffne dein Repository auf GitHub.
  2. Klicke auf den Tab Settings (Einstellungen) in der oberen Leiste.
  3. Wähle in der linken Seitenleiste unter dem Punkt „Security“ den Bereich Code security and analysis.
  4. Suche den Abschnitt Dependabot alerts und klicke auf Enable.
    • Hinweis: Bei öffentlichen Repositories ist dies oft standardmäßig aktiviert.

Schritt 2: Automatische Sicherheits-Updates einschalten

Alerts informieren dich nur – Security Updates handeln aktiv.

  1. Bleibe auf der gleichen Seite (Settings > Code security and analysis).
  2. Suche den Punkt Dependabot security updates.
  3. Klicke auf Enable.
    • Was passiert jetzt? Sobald eine Sicherheitslücke in einer deiner genutzten Bibliotheken gefunden wird, erstellt Dependabot automatisch einen Pull Request (PR), um die betroffene Version auf eine sichere Version zu heben.

Schritt 3: Dependabot Version Updates (Die dependabot.yml)

Während Security Updates nur bei Gefahr reagieren, halten Version Updates deine Software generell aktuell (z. B. von Version 2.1 auf 2.2). Dies erfordert eine kleine Konfigurationsdatei.

  1. Gehe in deinem Repository zum Tab Code.
  2. Erstelle einen neuen Ordner namens .github (falls nicht vorhanden).
  3. Erstelle darin eine Datei mit dem Namen dependabot.yml.
  4. Kopiere den folgenden Beispiel-Code hinein (angepasst an dein Projekt):
version: 2
updates:
  # Beispiel für npm (Node.js)
  - package-ecosystem: "npm" 
    directory: "/" 
    schedule:
      interval: "weekly" # Prüfe jede Woche nach Updates
    open-pull-requests-limit: 5 # Maximal 5 offene PRs gleichzeitig

  # Beispiel für GitHub Actions
  - package-ecosystem: "github-actions"
    directory: "/"
    schedule:
      interval: "monthly"

Die wichtigsten Parameter erklärt:

  • package-ecosystem: Welcher Paketmanager wird genutzt? (npm, pip, docker, maven, bundler, gomod etc.)
  • directory: Wo liegt die Datei (z. B. package.json)? Meist im Root-Verzeichnis /.
  • schedule.interval: Wie oft soll gesucht werden? (daily, weekly oder monthly).

Schritt 4: Global aktivieren (Für Organisationen)

Wenn du viele Repositories hast, musst du das nicht für jedes einzeln tun:

  1. Gehe in deine Organization Settings.
  2. Wähle Code security > Configurations.
  3. Dort kannst du eine Standard-Konfiguration erstellen, die Dependabot-Alerts und Security Updates automatisch für alle neuen und bestehenden Repositories aktiviert.

Best Practices für 2025

  • Nutze CI/CD: Dependabot-Updates sind am sichersten, wenn du automatisierte Tests (z. B. GitHub Actions) hast. Wenn die Tests nach einem Update grün sind, kannst du den PR mit gutem Gewissen mergen.
  • Gruppierte Updates: Wenn du zu viele PRs bekommst, kannst du sie in der dependabot.yml gruppieren:
    groups:
      dependencies:
        patterns:
          - "*" # Alle Updates in einen einzigen PR zusammenfassen
  • Reagiere schnell auf Security Alerts: Diese haben Vorrang vor normalen Versions-Updates.

Fazit

Mit Dependabot automatisierst du einen der nervigsten Teile der Softwarepflege. Einmal eingerichtet, sorgt er dafür, dass dein Code sicher bleibt und technisch nicht veraltet – und das völlig kostenlos.

Checkliste:

  • [ ] Alerts aktiviert?
  • [ ] Security Updates aktiviert?
  • [ ] dependabot.yml für Versions-Updates erstellt?

Viel Erfolg beim sicheren Codieren!

0