Skip to content

Commit

Permalink
Add german translations for version 1.1.0 (#537)
Browse files Browse the repository at this point in the history
* Add German Translations for changes in version 1.1.0

* Add german translation for changes in version 1.2.0

* Reslove suggestions from the review

* Delete translations for unreleased version 1.2.0
  • Loading branch information
holistic-developer authored Mar 8, 2023
1 parent acd4093 commit b81d2d7
Showing 1 changed file with 320 additions and 0 deletions.
320 changes: 320 additions & 0 deletions source/de/1.1.0/index.html.haml
Original file line number Diff line number Diff line change
@@ -0,0 +1,320 @@
---
description: Keep a Changelog
title: Keep a Changelog
language: de
version: 1.1.0
---
.header
.title
%h1 Führe ein CHANGELOG
%h2 Lass Deine Freunde nicht CHANGELOGs mit git logs füllen.

= link_to data.links.changelog do
Version
%strong= current_page.metadata[:page][:version]

%pre.changelog{ lang: "en" }= File.read("CHANGELOG.md")

.answers
%h3#what
%a.anchor{ href: "#what", aria_hidden: "true" }
Was ist ein Changelog?

%p
Ein Changelog ist eine Datei, die eine handgepflegte, chronologisch sortierte
Liste aller erheblichen Änderungen enthält, die zwischen einzelnen Veröffentlichungen
(oder Versionen) des Projekts umgesetzt wurden.

%h3#why
%a.anchor{ href: "#why", aria_hidden: "true" }
Was ist der Zweck eines Changelogs?

%p
Ein Changelog soll es Benutzern und Entwicklern einfacher machen, gerade die
beachtenswerten Änderungen, die zwischen Veröffentlichungen (oder Versionen)
des Projekts gemacht wurden, zu sehen.

%h3#who
%a.anchor{ href: "#who", aria_hidden: "true" }
Wer braucht schon ein Changelog?

%p
Menschen brauchen es. Seien es Konsumenten oder Entwickler, die Endnutzer der Software
sind Menschen, die es interessiert, was in der Software passiert. Wenn sich die Software ändert,
dann wollen diese Menschen wissen, wie und warum sie sich ändert.

.good-practices
%h3#how
%a.anchor{ href: "#how", aria_hidden: "true" }
Wie erstelle ich einen guten Changelog?

%h4#principles
%a.anchor{ href: "#principles", aria_hidden: "true" }
Grundlegende Prinzipien

%ul
%li
Changelogs werden <em>für Menschen</em> geschrieben, nicht für Maschinen.
%li
Für jede einzelne Version sollte es einen Eintrag geben.
%li
Änderungen der selben Art sollten in Bereiche gruppiert werden.
%li
Versionen und Bereiche sollten verlinkt werden können.
%li
Die neuste Version kommt als erstes.
%li
Das Release-Datum jeder Version muss angegeben sein.
%li
Gib an, ob du dich an die #{link_to "Semantische Versionierung", data.links.semver} hältst.

%a.anchor{ href: "#types", aria_hidden: "true" }
%h4#types Arten von Änderungen

%ul
%li
%code Added
für neue Features.
%li
%code Changed
für Änderungen an der bestehenden Funktionalität.
%li
%code Deprecated
für Features, die in zukünftigen Versionen entfernt werden.
%li
%code Removed
für Deprecated-Features, die in dieser Version entfernt wurden.
%li
%code Fixed
für alle Bug-Fixes.
%li
%code Security
um Benutzer im Fall von geschlossenen Sicherheitslücken zu einer Aktualisierung aufzufordern.

.effort

%h3#effort
%a.anchor{ href: "#effort", aria_hidden: "true" }
Wie kann ich den Aufwand der Changelog-Pflege so klein wie möglich halten?

%p
Habe immer einen <code>Unreleased</code>-Abschnitt über der neusten Version,
um zukünftige Änderungen im Auge zu behalten.

%p Dies hat zwei Vorteile:

%ul
%li
Menschen können sehen, welche Änderungen sie mit dem nächsten Release zu erwarten haben.
%li
Wenn der Zeitpunkt für den Release gekommen ist, kannst du den Inhalt des
<code>Unreleased</code>-Abschnitts in den neuen Release-Abschnitt verschieben.

.bad-practices
%h3#bad-practices
%a.anchor{ href: "#bad-practices", aria_hidden: "true" }
Kann man beim Changelog etwas falsch machen?
%p Ja. Hier sind einige Dinge, die eher unbrauchbar sind.
%h4#log-diffs
%a.anchor{ href: "#log-diffs", aria_hidden: "true" }
Einen Diff von Commit-Logs ausgeben

%p
Commit-Logs in einem Changelog sind eine schlechte Idee: Sie beinhalten lauter
überflüssige Dinge, wie Merge-Commit, Commits mit schlechten Bezeichnungen,
Änderungen an der Dokumentation, etc.

%p
Der Sinn eines Commits ist die Entwicklung des Source Code zu dokumentieren.
Manche Projekte haben saubere Commits, andere nicht.

%p
Der Sinn eines Changelog-Eintrags ist die Dokumentation der merkbaren
Unterschiede, die meist über mehrere Commits hinweg entstanden sind, dem
Endnutzer klar und deutlich zu kommunizieren.


%h4#ignoring-deprecations
%a.anchor{ href: "#ignoring-deprecations", aria_hidden: "true" }
Features ohne Deprecation-Warnung entfernen
%p
Wenn der Endnutzer auf eine neue Version upgradet, sollte ihm unmissverständlich
klar gemacht werden, wenn etwas kaputt gehen wird. Es sollte immer möglich sein,
zu einer Version zu upgraden, die die zu entfernenden Features auflistet, um so
in seinem Source Code auf diese Features zu verzichten. Anschließend sollte man
auf eine Version upgraden können, in der die Features entfernt wurden.
%p
Auch wenn du sonst nichts geändert hast, liste trotzdem alle veralteten und
entfernten Features, sowie jede funktionsgefährdende Änderung in deinem Changelog auf.
%h4#confusing-dates
%a.anchor{ href: "#confusing-dates", aria_hidden: "true" }
Verwirrende Datumsformate

%p
In den USA setzen die Menschen den Monat an den Anfang eines Datums
(<code>06-02-2012</code> für den 2. Juni 2012), wohingegen viele Menschen
im Rest der Welt ein roboterhaft aussehendes <code>2 June 2012</code>
schreiben, aber es völlig unterschiedlich aussprechen. <code>2012-06-02</code>
folgt der Logik vom größten zum kleinsten Wert, kann nicht mit anderen Formaten
verwechselt werden und ist ein #{link_to "ISO Standard", data.links.isodate}. Deshalb
ist es das empfohlene Datumsformat in Changelogs.

%h4#inconsistent-changes
%a.anchor{ href: "#inconsistent-changes", aria_hidden: "true" }
Inkonsistente Änderungen
%p
Ein Changelog, das nur einen Teil der Änderung beinhaltet, kann genauso gefährlich sein,
wie gar kein Changelog zu führen. Auch wenn manche Änderung nicht relevant sein mögen - zum
Beispiel muss das Entfernen eines einzelnen Leerzeichens nicht in jedem Fall
protokolliert werden - sollten alle wichtigen Änderung im Changelog erwähnt werden.
Werden Änderungen nur inkonsistent aufgezeichnet, könnten Benutzer fälschlicherweise
zu dem Schluss kommen, dass das Changelog die einzige Quelle der Wahrheit sei. Das sollte
es aber sein. Aus großer Kraft folgt große Verantwortung - einen guten Changelog zu
besitzen heißt, ihn konsistent zu aktualisieren.
%aside
Es gibt sicher noch mehr. Hilf mir alle schlechten Tipps zu sammeln, indem du
= link_to "ein Issue eröffnest", data.links.issue
oder einen Pull-Request erstellst.
.frequently-asked-questions
%h3#frequently-asked-questions
%a.anchor{ href: "#frequently-asked-questions", aria_hidden: "true" }
Häufig gestellte Fragen

%h4#standard
%a.anchor{ href: "#standard", aria_hidden: "true" }
Gibt es ein standardisiertes Changelog-Format?

%p
Leider nicht. Es gibt zwar den GNU Changelog Styleguide oder den
zwei Absätze langen GNU NEWS-Datei "Leitfaden". Beide sind aber
unzureichend.

%p
Dieses Projekt versucht
= link_to "eine bessere Changelog Konvention zu sein.", data.links.changelog
Dazu beobachten wir bewährte Praktiken aus der Open Source Community
und tragen sie zusammen.

%p
Gesunde Kritik, Diskussionen und Verbesserungsvorschläge
= link_to "sind herzlich willkommen.", data.links.issue


%h4#filename
%a.anchor{ href: "#filename", aria_hidden: "true" }
Wie sollte die Changelog-Datei benannt sein?

%p
Nenne sie <code>CHANGELOG.md</code>. Manche Projekte verwenden auch
<code>HISTORY</code>, <code>NEWS</code> oder <code>RELEASES</code>.

%p
Man könnte zwar meinen, dass der Name der Changelog-Datei keine große
Bedeutung hat, aber warum sollte man es den Endnutzern nicht einfach machen,
die Änderungen des Projekts zu finden, indem man einen einheitlichen Namen
verwendet?


%h4#github-releases
%a.anchor{ href: "#github-releases", aria_hidden: "true" }
Was ist mit GitHub Releases?
%p
Prinzipiell sind #{link_to "GitHub Releases", data.links.github_releases} eine gute Sache.
Sie können dazu benutzt werden, um einfache Git Tags (zum Beispiel einen
Tag namens <code>v1.0.0</code>) mit vielen Hinweisen zum Release
auszustatten, indem man sie manuell bearbeitet, oder die Änderungen in eine
Git Tag Nachricht schreibt, wo sie durch GitHub automatisch in die
Release-Notizen gesetzt werden.
%p
Leider lassen sich GitHub Releases aber nicht so einfach exportieren
und sind nur über GitHub selber zu lesen. Man kann sie auch so gestalten,
dass sie dem Keep a Changelog Format sehr ähnlich sehen, aber dazu betreibt
man in der Regel einen größeren Aufwand.
%p
Die derzeitige Version der GitHub Releases sind außerdem nicht leicht
durch die Endnutzer zu finden, ganz im Gegenteil zu den typischerweise
großgeschriebenen Dateien (<code>README</code>, <code>CONTRIBUTING</code>, etc.).
Ein weiterer kleiner Nachteil ist, dass das Web Interface zurzeit keinen Link
anbietet, um die Commits zwischen einzelnen Releases miteinander zu vergleichen.
%h4#automatic
%a.anchor{ href: "#automatic", aria_hidden: "true" }
Können Changelogs automatisiert ausgelesen werden?

%p
Es ist schwierig, weil Menschen meist unterschiedliche Formate und
Dateinamen verwenden.

%p
#{link_to "Vandamme", data.links.vandamme} ist ein Ruby gem erstellt vom
Gemnasium Team, das viele (aber nicht alle)
Changelogs von Open-Source-Projekten einlesen kann.


%h4#yanked
%a.anchor{ href: "#yanked", aria_hidden: "true" }
Wie sieht es mit zurückgezogenen Releases aus?

%p
Sogenannte "Yanked Releases" sind Versionen, welche wegen schwerwiegenden
Bugs oder Sicherheitsproblemen zurückgezogen werden mussten. Häufig kommen
diese im Changelog gar nicht vor, aber das sollten sie. So solltest Du diese
Versionen darstellen:

%p <code>## [0.0.5] - 2014-12-13 [YANKED]</code>

%p
Der <code>[YANKED]</code> ist nicht ohne Grund großgeschrieben. Es ist wichtig,
dass sie von Menschen bemerkt werden. Weil er von eckigen Klammern umgeben ist,
kann man sie außerdem einfacher automatisiert einlesen.


%h4#rewrite
%a.anchor{ href: "#rewrite", aria_hidden: "true" }
Sollte ich ein Changelog je umschreiben?

%p
Klar. Es gibt immer gute Gründe, ein Changelog zu verbessern. Ich öffne
regelmässig Pull Requests, um Open-Source-Projekten mit schlecht gewarteten
Changelogs fehlende Releases hinzuzufügen.

%p
Es ist auch möglich, dass Du eine wichtige Änderung vergessen hast, in einer
Version zu erwähnen. Natürlich ist es in diesem Fall wichtig, das Changelog
zu aktualisieren.


%h4#contribute
%a.anchor{ href: "#contribute", aria_hidden: "true" }
Wie kann ich mithelfen?

%p
Dieses Dokument ist nicht die <strong>Wahrheit</strong>. Es ist meine wohl überlegte Meinung,
zusammen mit von mir zusammengetragenen Informationen und Beispielen.

%p
So möchte ich erreichen, dass die Community einen Konsens findet. Ich glaube, dass
die Disskussion genauso wichtig ist wie das Endergebnis.

%p
Also bitte <strong>#{link_to "bring dich ein", data.links.repo}</strong>.

.press
%h3 Gespräche
%p
Ich habe im #{link_to "The Changelog podcast", data.links.thechangelog} darüber gesprochen,
warum sich Entwickler und Mitwirkende eines Projekts um ein Changelog kümmern sollten,
sowie meine Motivationen hinter diesem Projekt erklärt.

0 comments on commit b81d2d7

Please sign in to comment.