Ich hatte den Eindruck, dass ein Versionskontrollsystem die Notwendigkeit beseitigt, überall im Code Änderungsprotokolle anbringen zu müssen. Ich habe oft die fortgesetzte Verwendung von Änderungsprotokollen gesehen, einschließlich großer langer Blöcke zu Beginn gespeicherter Prozeduren, wobei ein großer Abschnitt für Änderungen an der Datei gesperrt und der Code mit Dingen wie folgendem übersät wurde:
// 2011-06-14 (John Smith) Change XYZ to ABC to fix Bug #999
und:
// 2009-95-12 (Bob Jones) Extracted this code to Class Foo
// <commented-out code here>
Der Grund dafür ist, wie mir erklärt wurde, dass das Durchsuchen unserer VCS-Protokolle zu lange dauert, um herauszufinden, wer was und warum geändert hat, während es sich in der Codedatei befindet, entweder oben oder in der Nähe der relevanten ändern, macht es einfach zu sehen, wer was wann geändert hat. Ich verstehe zwar den Punkt, aber es scheint überflüssig und schmeckt nur nach "Ähm, wir verstehen nicht wirklich, wie wir unser VCS richtig einsetzen, also werden wir uns überhaupt nicht darum kümmern."
Was denkst du? Verwenden Sie sowohl Kommentare als auch das Protokoll? Nur das Protokoll? Finden Sie es einfacher zu codieren, wenn Sie über einem Codeblock sehen, dass John Smith die Methode geändert hat, um vor einer Woche nach XYZ zu suchen, anstatt Protokolle durchsuchen und Codedateien in einem Diff-Tool vergleichen zu müssen?
BEARBEITEN: Mit SVN, aber im Grunde nur als Repository. Keine Zweige, keine Zusammenführungen, nichts außer log + storage.