2009-05-19 6 views
0

Haftungsausschluss Ich mache keine Code-Überprüfung, daher ist diese Frage nur von akademischem Interesse.Wo sollte Code vor der Code-Überprüfung gespeichert werden?

Ich habe viele Beiträge auf Stackoverflow gesehen, die Code-Review befürwortet/erfordert vor es ist in der Quellcodeverwaltung erlaubt.

Wenn Sie dies tun, wo speichern Sie Code den nicht überprüften Code, und wie behandeln Sie das Problem, wo der Entwickler den Code aktualisieren muss, um mit Konflikten aufgrund anderer Prüfung umzugehen - benötigen Sie ihn, um seine zu bekommen Code erneut überprüft?

Vielen Dank.

Antwort

4

Code sollte in Ihr Repository eingecheckt werden (SVN, TFS, etc). Sie können einen Zweig für die Entwicklung (oder sogar für jeden Entwickler) einrichten, wenn Sie verhindern möchten, dass der Zweig erst nach der Überprüfung in den Stamm aufgenommen wird.

3

Code, der nicht überprüft wird, wird noch getestet. Und Vertrauen ist eine wichtige Sache in der Entwicklung. Die Antwort lautet also, dass der Code nur dem Versionierungssystem gehört. Von dort bekommen einige es zur Überprüfung. Wenn es ein Problem gibt, kann es zurückgesetzt werden. Alles andere ist die meiste Zeit nur ein großer Streit umsonst. Denken Sie daran, dass Code im Repository nicht "Code in Produktion" ist.

Jeder sollte vor dem Commit aus dem Repository aktualisieren. Wenn Sie viele Aktualisierungen feststellen, ist es wirklich machbar, die Tests erneut auszuführen. Wenn es kein Problem als Commit gibt.

-2

Wir speichern es auf dem Desktop des Entwicklers. Es ist nicht in SVN eingecheckt, weil es noch nicht fertig ist.

Wenn es viel Code ist, ist das ein Problem - Sie warten zu lange auf die Überprüfung.

Wenn es sich um eine angemessene Menge an Code handelt, kann es an die Überprüfer per E-Mail gesendet werden. Vielleicht braucht es eine ZIP-Datei, um es organisiert zu halten.

Manchmal werden wir es in SharePoint veröffentlichen, aber das ist selten. E-Mail funktioniert normalerweise gut.

+0

Der Code hat Wert (z. B. für das Unternehmen oder Entwicklerteam), obwohl es noch nicht getan ist. Bis es in der Versionskontrolle ist, erhält es keinen der Vorteile, die die Versionskontrolle bietet. –

+0

@Craig McQueen: Unsere Position ist, dass es keinen Wert hat, bis es überprüft wird. Die erste Überprüfung führt fast immer zu Nacharbeiten. In einigen wenigen Fällen wird das "Modul verwerfen und stattdessen" auf irgendeine Weise überarbeitet. Ob der Code tatsächlich einen Wert hat oder nicht, ist nur eine Grundsatzentscheidung, und wir haben eine andere Entscheidung getroffen. –

0

Mein aktuelles Team führt Codeüberprüfungen durch, noch bevor die Ergebnisse den Stakeholdern vorliegen. Daher bin ich im Camp, das sich dafür einsetzt, dass die Quellcodeverwaltung erst nach einer Codeüberprüfung erfolgt.

Das heißt, eine Möglichkeit besteht darin, eine Patch-Datei in einem Verzeichnis auf der Festplatte zu speichern, anstatt die Quellcodeverwaltung zu übernehmen. Eine andere Option besteht darin, einen separaten Zweig zu verwenden, an dem Änderungen vorgenommen werden, bevor sie mit dem Zielzweig zusammengeführt werden, aber ich befürchte, dass dieser Ansatz mit Gefahren verbunden ist.

1

Akademische Antwort für eine akademische Frage, da wir auch keine Code-Überprüfung durchführen.

Alles wird in die Quellcodeverwaltung eingecheckt. Wenn es nicht vollständig funktioniert/getestet/überprüft wird, geht es in die persönliche Branche dieses Entwicklers.

1

Diese Art der Praxis ist ein guter Grund, einen DVCS wie Git zu verwenden. Entwickler können über längere Zeiträume hinweg arbeiten, ohne sich zu verpflichten, was Code-Überprüfungen ermöglicht, aber immer noch die von uns geschätzten Techniken der Versionskontrolle nutzt. Wenn Sie etwas wie SVN verwenden, müssten Sie für jeden Bug/Feature/was auch immer geschrieben werden soll, verzweigen und es nach der Code-Überprüfung wieder integrieren ... was sehr schmerzhaft sein könnte.

1

Dies hängt wirklich davon ab, welche Arten von Tools und Verfahren das Team eingerichtet hat.

Für die informelle Codeüberprüfung können Sie es einfach in die Versionskontrolle einchecken und andere Entwickler nach eigenen Zeitplänen überprüfen lassen; Probleme, die durch die Überprüfung gefunden wurden, werden dann separat eingecheckt. (Das ist, was unser Team tut.)

Für formalere Tool-unterstützte Code-Überprüfung, Tools wie Google Rietveld und (ich bin mir ziemlich sicher) Smart Bear Code Collaborator können Sie Code für die Überprüfung hochladen und haben eine Miniaturversion-Kontrolle- Style History für jede Einreichung, die im Verlauf einer Überprüfung aktualisiert wird. (Wenn Sie mehr über Code-Überprüfung erfahren möchten, hat Smart Bear eine free book zum Thema.)

Verwandte Themen