Entwickler Themen

Dieser Bereich enthält Anleitungen und Dokumentation für verschiedenste relevante Themen aus dem Alltag als Entwickler.

Conventional Commits anwenden

Disclaimer

Die Conventional Commits sind ein Standard zur einheitlichen Benennung von Commit-Nachrichten. Sie helfen Teams, Versionsänderungen besser nachzuvollziehen, automatisch Changelogs zu generieren und semantische Versionierung zu automatisieren.

Weitere Informationen: conventionalcommits.org


Die Vorteile

  1. Erleichtert die automatische Generierung von Changelogs
  2. Unterstützt die semantische Versionierung vom Projekt
  3. Fördert ein einheitliches und verständliches Commit-Format im Team
  4. Verbessert die Zusammenarbeit zwischen Entwicklern, Release-Automatisierungstools und CI/CD-Systemen

Anwendungsformat

Ein konformer Commit folgt diesem Format:

Typ(optionaler Scope): Beschreibung

Beispiel:

feat(auth): added login functionality

Commit-Typen


Optional: Scope

Der Scope beschreibt, auf welchen Teil der Codebasis sich der Commit bezieht. Er steht in Klammern direkt hinter dem Typ.

Beispiel:

fix(api): resolved error when fetching user data

Breaking Changes

Für Änderungen, die inkompatibel zur bisherigen API sind, wird BREAKING CHANGE: in der Fußzeile des Commits verwendet.

feat(auth): added two-factor authentication
BREAKING CHANGE: login process has been restructured

Semantische Versionierung anwenden

Disclaimer

Die semantische Versionierung ist ein gängiger Standard in der Softwareentwicklung, um Versionsnummern zu vergeben. Sie macht Änderungen im Code nachvollziehbar, erleichtert den Umgang mit Abhängigkeiten und verbessert die Kommunikation über den Entwicklungsstand.

Weitere Informationen: semver.org


Was ist die semantische Versionierung?

Die semantische Versionierung beschreibt ein dreiteiliges Versionsschema:

MAJOR.MINOR.PATCH

Beispiele aus der Praxis


Regeln der semantischen Versionierung

  1. Erhöhe die MAJOR-Version bei inkompatiblen API-Änderungen
  2. Erhöhe die MINOR-Version bei neuen, abwärtskompatiblen Funktionen
  3. Erhöhe die PATCH-Version bei abwärtskompatiblen Bugfixes

Vorabversionen und Build-Metadaten

Zusätzlich können Vorabversionen und Build-Metadaten angegeben werden:

1.0.0-alpha
1.0.0-beta+exp.sha.5114f85

Zusammenfassung