Changelog-Generator

Changelogs von Hand zu schreiben bedeutet, beim Release-Zeitpunkt durch das Git-Log zu stöbern. Dieser Generator überspringt diesen Schritt: Du fügst die Einträge, die du veröffentlichen möchtest, direkt unter der richtigen Kategorie ein, Hinzugefügt, Geändert, Behoben und Entfernt, ergänzt eine Versionsnummer und ein Datum, und er erzeugt einen Markdown-Abschnitt im Keep-a-Changelog-Stil, der bereit ist, in CHANGELOG.md eingefügt zu werden. Derselbe Inhalt kann auch als reiner Text erzeugt werden. Er liest nicht deine Git-Historie; du entscheidest, welche Änderungen in den Release kommen.

So erstellst du ein Changelog

  1. 1

    Version und Datum eingeben

    Gib die Versionsnummer ein, zum Beispiel 1.2.0. Lasse das Datum leer, um das heutige Datum zu verwenden.

  2. 2

    Einträge je Kategorie hinzufügen

    Füge die Release-Notizen unter Hinzugefügt, Geändert, Behoben und Entfernt ein, einen Eintrag pro Zeile. Leere Kategorien werden übersprungen.

  3. 3

    Das Ausgabeformat wählen

    Markdown (eine `## [Version] - Datum`-Überschrift mit Abschnitten im Stil von `### Added`) oder reiner Text (eine `v1.2.0 (Datum)`-Überschrift mit Aufzählungslisten).

  4. 4

    Das Changelog kopieren

    Füge die Ausgabe über dem vorherigen Eintrag in CHANGELOG.md ein.

Die vier Kategorien

Der Generator erzeugt genau vier Abschnitte, in dieser Reihenfolge: Added, Changed, Fixed und Removed. Die Abschnittsüberschriften der Ausgabe bleiben auf Englisch, dem Standard-Wortlaut von Keep a Changelog.

Kategorie Wann zu verwenden
Added Neue Funktionen
Changed Änderungen an bestehender Funktionalität
Fixed Fehlerbehebungen
Removed Funktionen, die entfernt wurden

Die Keep-a-Changelog-Konvention kennt auch die Abschnitte Deprecated, Security und Breaking. Der Generator hat keine Felder dafür; du kannst diese Abschnitte nach dem Einfügen der Ausgabe von Hand ergänzen.

Beispielausgabe (Markdown)

## [1.4.0] - 2026-04-18

### Added
- Dark mode support for the dashboard (#312)
- CSV export on the users page (#318)

### Changed
- Upgrade React to 18.3 (#320)
- Pagination now defaults to 50 items per page (#322)

### Fixed
- Crash when editing users with a null email (#319)
- Timezone offset in scheduled reports (#321)

### Removed
- Legacy reports API (#324)

Beispielausgabe (reiner Text)

v1.4.0 (2026-04-18)
ADDED:
  • Dark mode support for the dashboard (#312)
  • CSV export on the users page (#318)
CHANGED:
  • Upgrade React to 18.3 (#320)
  • Pagination now defaults to 50 items per page (#322)
FIXED:
  • Crash when editing users with a null email (#319)
  • Timezone offset in scheduled reports (#321)
REMOVED:
  • Legacy reports API (#324)

Tipps

  • Ein Eintrag pro Zeile. Jede Zeile in einem Feld wird zu einem Aufzählungspunkt. Leere Felder werden übersprungen, und du kannst eine Kategorie ganz weglassen.
  • Schreibe die Einträge als Changelog-Zeilen, nicht als Log-Notizen. Der Imperativ “fix: handle null email on edit” liest sich gut als Aufzählungspunkt.
  • Verweise auf Issue-/PR-Nummern, damit Leser nachbohren können: (#319) oder [#319](link) in der Ausgabe.
  • Eine Version pro Eintrag: Mische nicht zwei Releases in einen Block, selbst wenn sie nur einen Tag auseinanderliegen.
  • Veröffentlicht vs. unveröffentlicht: Halte oben eine [Unreleased]-Sektion mit Änderungen für die nächste Version. Verschiebe sie bei der Veröffentlichung in eine datierte Sektion.

Häufig gestellte Fragen

Den Konventionen von Keep a Changelog (keepachangelog.com): einer Versionsüberschrift mit Datum und gruppierten Aufzählungslisten. Der Generator erzeugt die Abschnitte Added, Changed, Fixed und Removed; die weiteren Standardabschnitte (Deprecated, Security, Breaking) folgen derselben Konvention, wenn du sie von Hand ergänzt.

Der Generator erzeugt die vier Hauptabschnitte: Added, Changed, Fixed und Removed. Es gibt keine eigenen Felder für Deprecated, Security oder Breaking; du kannst diese Abschnitte aber von Hand im erzeugten Text ergänzen, bevor du ihn einfügst.

Der Generator ist ein einmaliges UI-Werkzeug; für die Automatisierung verwende ein CLI wie standard-version, release-please oder semantic-release, die dieselben Muster in deiner Build-Pipeline umsetzen.

Nein. Es liest weder dein Repository noch deine Commit-Nachrichten; du fügst die Einträge selbst ein. Der von dir eingegebene Text wird an den Server gesendet, um die Ausgabe zu erzeugen, und wird weder gespeichert noch weitergegeben.

Verwandte Tools