Back

So deaktivieren Sie Dependabot-Benachrichtigungen für ein GitHub-Repository

So deaktivieren Sie Dependabot-Benachrichtigungen für ein GitHub-Repository

Wenn Sie ein persönliches Projekt verwalten, das seit Monaten ruht, oder Demo-Repositories für Bildungszwecke pflegen, kennen Sie die Frustration: Dependabot überflutet Ihren Posteingang mit Sicherheitswarnungen und erstellt Pull Requests für Abhängigkeiten, die Sie niemals aktualisieren werden. Lassen Sie uns das beheben.

Diese Anleitung zeigt Ihnen genau, wie Sie Dependabot-Benachrichtigungen und automatisierte Pull Requests für einzelne GitHub-Repositories deaktivieren – sowohl über die GitHub-Benutzeroberfläche als auch mithilfe von Konfigurationsdateien. Wir behandeln die Unterschiede zwischen den drei Dependabot-Features und wie Sie jedes einzelne abschalten können.

Wichtige Erkenntnisse

  • Dependabot besteht aus drei unabhängigen Features: Benachrichtigungen, Sicherheitsupdates und Versionsupdates
  • Sie können Dependabot über die GitHub-Benutzeroberfläche oder Konfigurationsdateien deaktivieren
  • Öffentliche Repositories haben möglicherweise bestimmte Dependabot-Features dauerhaft von GitHub aktiviert
  • Erwägen Sie selektive Deaktivierung für Monorepos oder teilweise aktive Projekte

Die drei Features von Dependabot verstehen

Bevor wir uns damit beschäftigen, wie man Dependabot deaktiviert, ist es wichtig zu verstehen, was Sie abschalten. Dependabot ist nicht ein einziges Feature – es sind tatsächlich drei verschiedene Dienste:

  1. Dependabot-Benachrichtigungen: Mitteilungen über Sicherheitslücken in Ihren Abhängigkeiten
  2. Dependabot-Sicherheitsupdates: Automatisierte Pull Requests, die bekannte Sicherheitslücken beheben
  3. Dependabot-Versionsupdates: Automatisierte Pull Requests, die alle Abhängigkeiten aktuell halten (nicht nur verwundbare)

Jedes kann unabhängig deaktiviert werden, wodurch Sie granulare Kontrolle darüber haben, welche Benachrichtigungen und PRs Sie erhalten.

Methode 1: Dependabot über GitHub-Einstellungen deaktivieren

Der schnellste Weg, Dependabot abzuschalten, ist über die Einstellungsseite Ihres Repositories. Diese Methode ist perfekt für einmalige Änderungen und erfordert keinen Code.

Dependabot-Benachrichtigungen deaktivieren

  1. Navigieren Sie zu Ihrem GitHub-Repository
  2. Klicken Sie auf Settings (falls Sie es nicht sehen, klicken Sie zuerst auf das Dropdown-Menü)
  3. Finden Sie in der Seitenleiste den Bereich “Security” und klicken Sie auf Code security and analysis
  4. Suchen Sie “Dependabot alerts” und klicken Sie auf Disable

Dependabot-Sicherheitsupdates deaktivieren

Folgen Sie dem gleichen Pfad wie oben, aber suchen Sie stattdessen nach “Dependabot security updates”. Klicken Sie auf Disable, um automatische Sicherheits-PRs zu stoppen.

Hinweis: Für öffentliche Repositories können einige Dependabot-Features aufgrund der GitHub-Richtlinien dauerhaft aktiviert sein.

Was ist mit Versionsupdates?

Versionsupdates werden anders konfiguriert. Wenn Sie sie zuvor über eine dependabot.yml-Datei aktiviert haben, müssen Sie diese Konfiguration entfernen oder die dateibasierte Methode unten verwenden, um sie zu deaktivieren.

Methode 2: Dependabot mit Konfigurationsdateien deaktivieren

Für dauerhaftere oder versionskontrollierte Änderungen verwenden Sie eine .github/dependabot.yml-Konfigurationsdatei. Dieser Ansatz ist ideal, wenn Sie:

  • Dokumentieren möchten, warum Dependabot deaktiviert ist
  • Einheitliche Einstellungen für alle Teammitglieder anwenden möchten
  • Bestimmte Features selektiv deaktivieren, während andere beibehalten werden

Versionsupdates vollständig deaktivieren

Um Dependabot-Versionsupdates zu deaktivieren, setzen Sie das Pull-Request-Limit auf null:

version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/"
    schedule:
      interval: "daily"
    open-pull-requests-limit: 0

Diese Konfiguration weist Dependabot an, nach Updates zu suchen, aber niemals Pull Requests zu öffnen. Wenden Sie dieses Muster auf jedes Paket-Ökosystem in Ihrem Projekt an (npm, pip, bundler, etc.).

Updates für spezifische Abhängigkeiten deaktivieren

Manchmal möchten Sie Dependabot aktiv halten, aber bestimmte problematische Abhängigkeiten ignorieren:

version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/"
    schedule:
      interval: "weekly"
    ignore:
      - dependency-name: "lodash"
      - dependency-name: "react"
        versions: ["16.x", "17.x"]

Alle Dependabot-Konfigurationen entfernen

Um Dependabot-Versionsupdates vollständig abzuschalten, löschen Sie einfach die .github/dependabot.yml-Datei aus Ihrem Repository. Ohne diese Datei wird Dependabot überhaupt nicht nach Versionsupdates suchen.

Häufige Szenarien und Lösungen

Archivierte oder inaktive Projekte

Für wirklich tote Projekte deaktivieren Sie alle drei Dependabot-Features über die GitHub-Benutzeroberfläche. Es macht keinen Sinn, Sicherheitswarnungen für Code zu erhalten, der niemals wieder ausgeführt wird.

Demo- und Bildungs-Repositories

Erwägen Sie, Dependabot-Benachrichtigungen aktiviert zu lassen, aber automatische PRs zu deaktivieren. So bleiben Sie über Sicherheitslücken informiert, ohne das PR-Rauschen. Studenten oder Leser können Sicherheitswarnungen sehen, ohne durch automatisierte Pull Requests verwirrt zu werden.

Monorepos mit gemischter Aktivität

Verwenden Sie den konfigurationsdateibasierten Ansatz, um Dependabot selektiv für inaktive Verzeichnisse zu deaktivieren, während es für gepflegten Code aktiv bleibt:

version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/active-app"
    schedule:
      interval: "weekly"
  - package-ecosystem: "npm"
    directory: "/archived-app"
    schedule:
      interval: "daily"
    open-pull-requests-limit: 0

Wichtige Überlegungen

Wenn Sie Dependabot-Sicherheitsfeatures deaktivieren, übernehmen Sie die Verantwortung für die manuelle Überwachung und Aktualisierung verwundbarer Abhängigkeiten. Für aktive Projekte sollten Sie diese Alternativen in Betracht ziehen, bevor Sie vollständig deaktivieren:

  • Update-Häufigkeit reduzieren statt vollständig deaktivieren
  • Updates gruppieren, um weniger, aber größere PRs zu erhalten
  • Ignore-Regeln für spezifische Abhängigkeiten verwenden statt pauschaler Deaktivierung

Denken Sie daran, dass das Deaktivieren von Dependabot-Benachrichtigungen Sicherheitslücken nicht verschwinden lässt – es stoppt nur die Benachrichtigungen.

Fazit

Das Deaktivieren von Dependabot ist unkompliziert, egal ob Sie die GitHub-Benutzeroberfläche bevorzugen oder Konfigurationsdateien verwalten möchten. Der Schlüssel liegt darin zu verstehen, welches der drei Dependabot-Features Sie tatsächlich abschalten möchten und die richtige Methode für Ihren Workflow zu wählen. Für ruhende Projekte macht aggressives Deaktivieren Sinn. Für alles andere sollten Sie selektive Konfiguration der vollständigen Deaktivierung vorziehen.

Häufig gestellte Fragen

Ja, Sie können Dependabot für jedes Repository deaktivieren, das Sie besitzen oder für das Sie Admin-Zugriff haben. Navigieren Sie zu Settings, dann zu Code security and analysis, um Dependabot-Features unabhängig von der Repository-Sichtbarkeit ein- oder auszuschalten.

Das Deaktivieren von Dependabot kann sich auf die Sicherheitseinblicke und Scorecard-Bewertungen Ihres Repositories auswirken. GitHub verfolgt die Einführung von Sicherheitsfeatures, daher könnte das Abschalten von Benachrichtigungen und Updates Ihre Sicherheitsmetriken senken, obwohl dies hauptsächlich für öffentliche oder Organisations-Repositories relevant ist.

Absolut. Sie können jedes Dependabot-Feature jederzeit über das gleiche Settings-Menü wieder aktivieren oder indem Sie die dependabot.yml-Konfigurationsdatei wieder hinzufügen. Ihre vorherigen Einstellungen werden nicht beibehalten, daher müssen Sie von Grund auf neu konfigurieren.

Understand every bug

Uncover frustrations, understand bugs and fix slowdowns like never before with OpenReplay — the open-source session replay tool for developers. Self-host it in minutes, and have complete control over your customer data. Check our GitHub repo and join the thousands of developers in our community.

OpenReplay