(Noch im Aufbau)
calloc
) ist es also sicherer anzunehmen, dass der Inhalt
nicht definiert ist. Es hängt also von dem jeweiligem System ab, was
konkret der Speicherinhalt sein wird. Fließt diese Tatsache, in das
Verhalten eines Programms ein, sagt man es verlässt sich
auf undefined behaviour, was per Definition nicht portabel ist.
git diff
bereits sehen (hier ist auch das Ideal die Änderungen selbst möglichst
klein und spezialisiert zu halten). Die Commit-Nachricht selbst
braucht das nicht wiedergeben: Genau wie bei Kommentaren im
Quelltext, kann man annehmen der Leser versteht die Sprache — es
ist nicht deine Aufgabe diesem C beizubringen. Stattdessen liegt die
Unklarheit meistens darin, wieso etwas geändert (oder in der
Quelltext-Analogie geschrieben) wurde. Das zu erklären ist was den
Leser wahrscheinlich eher interessieren wird. Hier kann man noch
qualifizieren, indem man zwischen dem Commit Headerund dem
Commit Bodyunterscheidet. Ersteres kann noch deskriptiv sein, weil man das benutzt um in einer Liste (
git log
--online
) zu suchen, während die Commit Body meist neben dem
Diff steht, und somit keinen Grund hat dieses zu duplizieren.