Verwenden Sie die Versionskontrolle für die Heimentwicklung?

138

Bis jetzt habe ich meine persönlichen und schulischen Projekte zu Hause entwickelt, ohne irgendeine Form von Revisionskontrollsoftware zu verwenden, um meine Änderungen und so weiter zu handhaben.

Meine Frage ist, wie machbar ist es, eine Versionskontrollanwendung (wie TortoiseSVN ) für persönliche Projekte zu verwenden, die ich für mich selbst (und sogar für Schulprojekte) mache ?

Lohnt es sich, nur für 'Home-Projekte' einzuchecken, Änderungen vorzunehmen und all diese Routine zu erledigen, anstatt nur manuelle Backups zu erstellen?

Links :

Peter Mortensen
quelle
2
Die Quellcodeverwaltung ist viel einfacher als die manuelle Sicherung! Vielleicht ist es einfacher zu lernen, wie manuelle Backups erstellt werden, als zu lernen, wie man die Quellcodeverwaltung verwendet.
Yfeldblum
1
Ich kann VisualSVN empfehlen, sehr einfach zu bedienen. Und ihr Subversion-Server ist kostenlos :) ( visualsvn.com )
Svish
Verwenden Sie stattdessen einen gehosteten Server. Sie erhalten keine Wartung und kein Backup. Ich benutze Unfuddle: stackoverflow.com/questions/430742/…
ripper234

Antworten:

191

Vollständig.

Credits auch an http://blogs.embarcadero.com/nickhodges/2010/04/23/39416 :

  • Manchmal machen wir dumme Fehler. Ein Sicherheitsnetz für die Quellcodeverwaltung ist ein Muss.
  • Kennzeichnen Sie wichtige Meilensteine. Selbst in der Heimentwicklung möchten Sie möglicherweise eine Reihe von Dateien und Revisionen als eine bestimmte Softwareversion markieren.
  • Sie trainieren für Ihr Berufsleben. Wenn Sie sich mit der Arbeitsmethode beschäftigen, die mit der Verwendung der Quellcodeverwaltung verbunden ist, werden Sie professionell vorbereitet.
  • Speichereffizienz. Aktuelle Versionsverwaltungssysteme speichern Revisionen als Delta-Differenz zur vorherigen Revision. Dies bedeutet, dass die Festplatte effizienter ist, da nicht die gesamte Datei gespeichert wird, sondern nur die Unterschiede.
  • Sie haben den Verlauf für Ihren gesamten Quellbaum. Sie können schnell sehen, was geändert wurde und wann geändert wurde. Vergleichen Sie Dateien aus verschiedenen Revisionen und führen Sie sie einfach zusammen.
  • Sie können zum Experimentieren verzweigen. Wenn Sie einige Experimente im Auge haben, können Sie einen Zweig (eine neue unabhängige Entwicklungslinie) erstellen und testen. Wenn Sie mit den Ergebnissen zufrieden sind, führen Sie sie am Ende im HEAD (Hauptentwicklungslinie) zusammen. Sie erhalten dies alles kostenlos, ohne eine Kopie erstellen zu müssen, und erhalten die gleichen Vorteile, wenn Sie die Quellcodeverwaltung auch beim Experimentieren verwenden.
rauchen
quelle
13
Nur eines: Wenn sich das Versionskontrollsystem auf einem Remotecomputer befindet, bietet es eine einfache Online-Sicherung Ihrer Arbeit.
NotMe
Ich stimme vollkommen zu. Jedes Mal, wenn Sie eine dieser Funktionen nutzen müssen, haben Sie bereits die geringen Kosten für die Verwendung der Quellcodeverwaltung zurückgewonnen.
Chris Farmer
Aufzählungspunkt 4 gilt nicht für Git. git ist für die Zusammenführungsleistung optimiert, und das Speichern von Differenzen ist für dieses Ziel nicht vorteilhaft. Heutzutage wird meistens davon ausgegangen, dass Sie über genügend Speicherplatz für Ihren Quellcode verfügen. Alle anderen Punkte sind jedoch Gründe, eine Quellcodeverwaltung zu verwenden, und Git erfüllt natürlich alle.
SingleNegationElimination
Wieder einmal empfehle ich git, insbesondere für die Punkte 2. 5. und 6. git hat eine sehr schöne Oberfläche zum Markieren, Verzweigen, Zusammenführen usw. und einige der grafischen Tools wie qgit oder gitk machen es sehr einfach zu sehen, wie all Ihre Zweige passen zusammen. Es ist auch ein Kinderspiel, Ihr aktuelles (nicht versioniertes) Arbeitsverzeichnis in ein Git-Verzeichnis mit drei Befehlen zu verwandeln: Git Init, Git Add., Git Commit
David Claridge
Wenn Ihr persönliches Projekt groß genug ist, um Punkt 4 (Speichereffizienz) zu berücksichtigen, benötigen Sie auf jeden Fall eine Quellcodeverwaltung!
Tikhon Jelvis
31

Es lohnt sich total.

Beachten Sie, dass Sie auch keinen vollwertigen SVN-Server einrichten müssen. Sie können einfach ein Repository im lokalen Dateisystem erstellen und eine Verbindung mit der Syntax file: // URL herstellen. Dies bedeutet, dass Sie sich nicht die Mühe machen müssen, einen SVN-Daemon einzurichten (was für ein Einzelbenutzerprojekt wahrscheinlich übertrieben ist).

Sie können sich auch Optionen mit geringerem Gewicht wie git ansehen, mit denen alle Arbeitsdateien lokal gespeichert werden, ohne dass ein separates Repository erstellt werden muss. Git bietet Ihnen einige weitere Optionen, wie Sie Ihre Quellcodeverwaltung später einrichten können.

Madlep
quelle
1
Ich habe kürzlich git ausprobiert, weil ein Projekt, dem ich folgte, es verwendet hat. Ich wechselte sofort zu Git für meine persönlichen und beruflichen Projekte, sobald ich sah, wie einfach und schnell es ist. Sehr empfehlenswert.
Dave Sherohman
8

Die Verwendung der Quellcodeverwaltung eignet sich auch für Sicherungszwecke. Wenn Sie immer alles einchecken, können Sie alle Ihre Quellcode-Projekte sichern, indem Sie alle Ihre Repositorys sichern. Wenn Sie mehrere Computer haben, müssen Sie sich keine Gedanken darüber machen, wo sich die neueste Version Ihres Codes tatsächlich befindet - sie befindet sich auf dem Repository-Server.

Greg Hewgill
quelle
6

Ich habe meine gesamte Masterarbeit unter Quellcodeverwaltung gehalten - sowohl den Code als auch die Abschlussarbeit selbst - und bin daher ein starker Befürworter, nicht nur für Code.

Bei einzelnen Projekten besteht der Hauptvorteil in der Freiheit, Dinge zu ändern und zu experimentieren, da Sie jederzeit zur vorherigen Version zurückkehren können, wenn dies nicht funktioniert. Und es gibt Ihnen implizite Backups Ihrer Arbeit (stellen Sie einfach sicher, dass sich Ihr SVN-Repo mindestens auf einer anderen Festplatte befindet als Ihre Hauptarbeit).

Kena
quelle
5

Es lohnt sich auf jeden Fall. Es gibt Ihnen die Möglichkeit, wilde und verrückte Refactorings auszuprobieren und sie dann problemlos wieder zu entfernen, wenn sie nicht funktionieren. Es legt auch gute Gewohnheiten fest, ob / wann Sie mehr mit einer Gruppe zusammenarbeiten.

Mit Subversion benötigen Sie (zumindest) nicht einmal einen "Server" - ein einfaches Verzeichnis kann als Repository dienen, wenn Sie mit URLs vom Typ "file: //" darauf zugreifen. Es gibt sogar ein kostenloses Buch, das so ziemlich alles enthält, was Sie wissen müssen, um loszulegen:

http://svnbook.red-bean.com/nightly/en/index.html

Limbisches System
quelle
4

Ich finde es äußerst hilfreich, ein SVN-Server-Setup zu haben, da ich Revisionen und andere Projekte wegwerfe, weil ich mich an eine Funktion oder einen Weg erinnere, etwas zu tun, das ich jetzt verwenden könnte. Mit dem SVN-Server weiß ich, dass der Code zu Hause gespeichert ist und ich ihn später abrufen kann.

Bryan Rehbein
quelle
4

Die Revisionskontrolle ist großartig, da Sie experimenteller sein können und wissen, dass Sie auf etwas zurückgreifen können, wenn Ihre Experimente fehlschlagen.

Dreamlax
quelle