Ich habe diese Frage gelesen. Soll ich nicht referenzierten Code entfernen?
Einige der Ratschläge waren, nicht referenzierten Code zu löschen, da sich der Code als Referenz in der Quellcodeverwaltung befindet, falls er später benötigt wird.
Wie organisieren Sie diesen gelöschten Code, damit eine spätere Version von Ihnen (oder einem anderen Programmierer) ihn später finden kann? Erstellen Sie einen separaten Zweig oder markieren Sie ihn irgendwie in der Quellcodeverwaltung?
Ich habe gelöschten Code noch nie aus der Quellcodeverwaltung wiederbelebt. Ich habe ihn meistens nur verwendet, um Änderungen an Code zu verfolgen, der noch aktiv ist. Ich habe bereits auf Zweige verwiesen, wenn diese die experimentelle Arbeit eines anderen enthalten haben. Vielleicht ist dies eine gute Möglichkeit, interessante Codeabschnitte zu markieren, die im Trunk gelöscht werden?
quelle
Antworten:
Sofern Sie nicht in einem Zweig experimentieren und noch nicht sicher sind, welche Lösung letztendlich wieder integriert wird, beziehen Sie sich normalerweise nicht auf gelöschten Code.
Sie könnten auf sehr seltene Gelegenheit, ausdrücklich für entfernten Code graben , dass Sie vage daran erinnern , ein Problem , das Sie haben die Lösung jetzt . Der typischere Grund, warum Sie gelöschten Code sehen, ist, wenn Sie das Backlog durchsuchen, um etwas über den aktuellen Code oder das aktuelle Verhalten einer Anwendung in Bezug auf ihren historischen Code oder ihr Verhalten zu verstehen.
Insbesondere könnten Sie ...
... etc.
In diesen Fällen wird der alte Code normalerweise nicht wiederbelebt. Sie verstehen nur etwas , das Sie sehen gerade jetzt entfernt Code für Kontext oder Anleitung verwenden.
quelle
Ich denke, die Antwort lautet: Die überwiegende Mehrheit der Programmierer kümmert sich nicht darum, gelöschten Code zu referenzieren. Aus verschiedenen Gründen. Einige Gründe, die mir in den Sinn kommen, sind:
Am wichtigsten ist wohl reine Faulheit ...
Die meisten hatten nie das Bedürfnis, Code wiederzubeleben, daher haben sie keine Erfahrung, die sie dazu motiviert, die Wiederbelebung von Code zu vereinfachen.
Der meiste gelöschte Code wird aus einem bestimmten Grund gelöscht. Normalerweise wird es durch einen anderen, besseren, funktional äquivalenten oder leistungsfähigeren Code ersetzt. Warum sollte jemand den minderwertigen Code wiederbeleben wollen?
Beachten Sie, dass dies auch wieder ein psychologisches Problem ist: Die meisten Programmierer sind ziemlich stolz auf die Ergebnisse ihrer Arbeit. Wie konnte es jemals in den Sinn kommen, dass das, was sie ersetzten, immer noch einen gewissen Wert hatte?
Da der meiste Code nicht nur gelöscht, sondern ersetzt wird, bieten die im Übergang geänderten Schnittstellen genügend Informationen, wenn Sie den gelöschten Code aufgrund einiger durch den neuen Code eingeführter Regressionen wirklich aufspüren müssen.
Unabhängig davon, wie viel mehr oder weniger gültige Gründe Sie für diese Missachtung von totem Code verwenden können, denke ich, dass es für die Programmierer wirklich nur ein "egal" ist. Und selbst wenn Sie versuchen, gelöschte Inhalte auf die eine oder andere Weise zu markieren, sollten Sie darauf vorbereitet sein, bei dieser Anstrengung gründlich ignoriert zu werden ...
quelle
Diese Frage greift wahrscheinlich auf "Wie können Sie die Rückverfolgbarkeit Ihrer VCS-Checkins anhand der Fehlerdatenbank und Ihrer Systemanforderungen aufrechterhalten?"
Die Zeiten, in denen Leute Code aus der Quellcodeverwaltung wiederbeleben, sind in der Regel die Zeiten, in denen Sie feststellen, dass etwas unbeabsichtigt kaputt gegangen ist und zurückgebracht werden muss.
Das Wichtigste in diesem Szenario für jemanden, der nach einem bestimmten Stück entfernten Codes sucht, ist, dass er ihn leicht nachverfolgen kann, indem er die Anforderungsdatenbank und das Fehlerverfolgungstool durchsucht. weil sie wahrscheinlich nach der spezifischen Anforderung oder nach Wörtern suchen, die die Funktionalität beschreiben. Es ist unwahrscheinlich, dass sie den Namen der Quelldatei oder die Klasse / Funktion kennen, die entfernt wurde.
Wenn Sie einen interessanten / experimentellen Code verfolgen möchten, der vor der Veröffentlichung entfernt werden muss, können Sie ihn einfach mit einigen "Bug" -Tickets nach dem Motto "Nicht verwendeten Code entfernen für ..." verfolgen . Oder führen Sie eine neue Art von Ticket in das System für die Prototyp-Funktion ein .
Um die Frage direkt zu beantworten - verwenden Sie keine Zweige / Tags in Ihrem VCS-System, um gelöschten Code zu verfolgen - verwenden Sie Ihr Änderungsverfolgungstool.
quelle
Der Rat richtet sich an Personen, die veralteten Code "nur für den Fall" in der Codebasis behalten. Da der Code weiterhin in der Quellcodeverwaltung vorhanden ist, sollten Sie nicht befürchten, ihn zu löschen. Sie organisieren gelöschten Code nicht wirklich als solchen, da der springende Punkt ist, dass er nicht mehr benötigt wird. Sie fügen einfach eine Festschreibungsnachricht hinzu, die angibt, was im Festschreiben geändert und gelöscht wurde. Die relevanteste Festschreibungsnachricht für den gelöschten Code ist die Nachricht zum Zeitpunkt des ersten Hinzufügens des Codes und nicht die Nachricht beim erneuten Löschen.
"Experimentelle Arbeit" ist wirklich ein anderes Thema. Sie sollten dafür einen separaten Zweig haben.
quelle