@ -95,7 +95,29 @@ Es gibt verschiedene Wege seinen Code mit Versionskontrolle zu sichern. Man kann
Bei clean commits soll man die commits klein halten. Man soll oft commiten. Man soll früh commiten. Somit kann man Konflikte vermeiden. `git` kann dann den Konflikt automatisch lösen. Dazu noch ist es einfacher die Struktur der Änderungen am Baumdiagramm nachzuverfolgen.
---
## SU 05 (21.11.2023)
## SU 05 (28.11.2023)
### Lernziel
- Abhängigkeitenverwaltung
- Semantische Versionierung
- Kooperation mit SCM
- Remote repository und privater fork
### Erkenntnis
#### Automatisierte Tests
CI ist nicht beste Methode dein Programm zu testen. Denn CI erlaubt keinen menschlichen Eingriff. Kompilierbar heißt nicht, dass dein Programm funktioniert. Und CI Tests müssen immer im CI Prozess ausgeführt werden. Deswegen sind automatisierte Tests besser. Denn AT führen Programme aus. Sie dokumentieren gewünschtes Verhalten und sind wiederholbar. Und sie erkennen Laufzeitfehler. Deswegen sollten automatisierte Tests in unser Programm benutzen. So gehen wir sicher das unser Programm läuft und gut getestet ist.
### Wiederholung
#### forks
Jeder Entwickler hat Zugriff auf ein `remote repository`. Dies ist das zentrale Repository. Noch dazu soll jeder Entwickler Zugriff auf ein `privates remote repository` haben. Dies nennt man ein `fork`. Somit soll jedes `lokale repository` zwei `remote repositories` haben. Auf dem `Origin branch` hat man keine Schreibrechte, nur Leserechte. Den `Upstream branch` kann man lesen und bearbeiten, man hat Schreibrechte. Upstream ist der `privater fork`.