Hallo,
kann ich jederzeit und ebensogut auch mit der Methode "Snapshot als Verzeichniskopie".
Klar, aber Rechtsklick -> Commit, Kommentar, Enter bzw. svn commit -m "Kommentar" macht weniger Arbeit als mir erstmal wieder einen neuen Snapshot-Namen auszudenken, das ganze Zeugs zu kopieren, und den Commit-Kommentar in irgendeine Datei einzupflegen.
streiche "ausdenken". Verzeichnisname ergibt sich bei mir gewöhnlich aus Projektname, Bindestrich, ISO-Datum, Bindestrich, Uhrzeit.
Also kein Unterschied zu "meiner" Methode".
Außer, dass Du viel mehr manuell erledigen mußt.
Sehe ich als Vorteil. Manuell erledigen heißt, ich *weiß* genau, was passiert und kann es jederzeit den Erfordernissen anpassen.
Das ist wohl wahr, aber ein ganz anderes Problem, das mit dem Topic hier nichts zu tun hat.
Doch. Mit einer Versionsverwaltung kannst Du zum letzten bekannt guten Zustand zurück, OHNE dich durch Tonnen von verteilt herumliegenden Snapshots kämpfen zu müssen.
Wer spricht von verteilt herumliegenden Sachen? Selbstverständlich gehe ich von einem geordneten Verzeichnis auf einem zentralen Server aus.
Ich bitte dich - im Zeitalter von Giga- und Terabyte-Platten?
Mal sehen:
SVN-Verzeichnis auf dem $WORK-Server belegt rund 500 MByte, ...
Erstens: Ich gehe von kleineren Dimensionen aus. Die Projekte, an denen ich bisher beteiligt war, lagen allerhöchstens bei 15..20MB Sourcen.
Zweitens: Vollständige Snapshots bewahre ich nur maximal zwei bis drei Known-Good-Stände zurück auf. Ältere Zwischenstände werden gelöscht, und nur noch wesentliche Milestones aufbewahrt. Das macht also insgesamt vielleicht 20..30 Einzelstände. Und auch die verschwinden (mit Ausnahme des letzten), wenn das Projekt einen Status erreicht, den man im weitesten Sinn als "abgeschlossen" bezeichnen will.
Es hat aber vor allem den Vorteil, dass auch jemand ohne dieses Versionskontrolldingsbums mal eben den kompletten aktuellen Projektstand vom Server ziehen kann.
Nächtlicher automatischer Export.
Wird aber anscheinend selten gemacht. Was habe ich neulich noch gesucht? ... Hmm, vergessen. Jedenfalls gab's für dieses Projekt auch ein Online-Repository, und ich hab mir'n Wolf gesucht, aber nirgends eine Möglichkeit für einen Komplett-Download gefunden. Sowas ist dann frustrierend.
Das ist nämlich ein Punkt, der *mich* oft stört, wenn Repos irgendwelcher Software im Internet angeboten werden: Man sucht meistens vergeblich nach einem Komplett-Download, sondern muss sich die Dateien einzeln ziehen und dabei auf die Hierarchie achten. Bei einem kompletten Snapshot als zip- oder sonstiges Archiv ergibt sich das von allein.
Äh, wie?
svn checkout svn://svn.example.com/svn/foo/bar/trunk, wenn Du basteln willst, svn export svn://svn.example.com/svn/foo/bar/trunk, wenn nicht.
Ich sprach von einer Zugriffsmöglichkeit *ohne* VCS, also beispielsweise ein direkter HTTP- oder FTP-Download. Oder eben ein Zugriff übers Dateisystem.
Die zusätzlichen Meta-Informationen, wie etwa den Grund für die neue Version und die Änderung in Stichworten, werden sowieso als Kommentar im Quelltext notiert - oder als zusätzliches Dokument.
*DAS* artet in Bürokratie aus.
Empfinde ich nicht so.
Ich bin hier ($WORK) wortwörtlich von Tonnen von Papier umgeben, auf dem Amateure ihre historischen Programmversionen und Änderungsdokumentationen ausgedruckt haben. Versionsverwaltung komplett auf Papier. Kein Witz.
Ich halte große Stücke auf gedruckte Dokumentation, aber *nur* auf Papier ist Murks.
Wie kommentierst Du übrigens gelöschte Zeilen? ;-)
Wozu? Ich will ja nicht jeden Bearbeitungsschritt dokumentieren, sondern nur die Idee, das Ziel und das Ergebnis der Überarbeitung. Und das Verfahren da, wo der entsprechende Code steht. Nur im Ausnahmefall steht da mal ein Hinweis auf eine konkrete Anweisung, die aus einem ganz bestimmten Grund entfallen ist.
Ciao,
Martin
Die letzten Worte des Neandertalers:
Möchte doch zu gern wissen, was in der Höhle ist ...
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(