Die Verwendung des vom Versionskontrollsystem verwalteten Festschreibungsverlaufs kostet fast nichts. Während eines größeren Projekts zur Umgestaltung (oder Reorganisation / Bereinigung) werden jedoch Funktionen und Klassen und sogar Namespaces verschoben. Manchmal werden mehrere Dateien zusammengeführt und andere Dateien werden aufgeteilt. Diese Änderungen führen häufig zum Verlust des ursprünglichen Festschreibungsverlaufs einiger Dateien.
Meiner persönlichen Meinung nach ist die Aufrechterhaltung der Organisation des Projekts wichtiger als die Aufrechterhaltung des Quellcodeverlaufs. Durch eine gute Projektorganisation können mit angemessenem Aufwand kontinuierlich neue Funktionen hinzugefügt werden, während der Wert des Quellcodeverlaufs zweifelhaft erscheint.
Darüber hinaus werden durch die Verwendung von Unit-Tests Regressionsprobleme schnell identifiziert. Müssen wir tatsächlich den Verlauf des Quellcodes beibehalten, solange die neueste Version alle Softwareanforderungen erfüllt?
Ich verstehe, dass jeder ausgelieferte Quellcode erhalten bleiben muss, da die Kunden unterstützt werden müssen, ohne dass sie ein größeres Versions-Upgrade durchführen müssen. Aber abgesehen davon, gibt es irgendeinen Wert, den Verlauf von Quellcode-Commits beizubehalten?
Spielt der Quellcode-Commit-Verlauf eine Rolle bei der Kommunikation zwischen Teammitgliedern? Was ist, wenn wir den Commit-Verlauf abschaffen, uns aber stattdessen auf "Quellcode" + "Unit-Test-Code" für die Kommunikation verlassen?
Macht das Vorhandensein eines Commit-Verlaufs die langfristige Dokumentation wichtiger Informationen über das Projekt, wie z. B. die wichtigsten Design- / Anforderungsänderungen und die Gedankenströme, die diese Änderungen ausgelöst haben, selbstgefällig?
These changes often lead to the loss of the original commit history of a few files.
Schauen Sie sich zB "git tad" an - nichts geht verloren. Manchmal ist es etwas schwieriger zu finden, aber es ist immer da.