Verwenden Sie eine Art Versionskontrolle, wenn Sie alleine und mit kleinen Projekten arbeiten?

30

Sehr oft arbeite ich nur für mich an kleinen Projekten. Ich arbeite an einer Maschine, habe aber kürzlich darüber nachgedacht, trotzdem eine Art Versionskontrolle zu verwenden. Dies hätte einige Vorteile, wie zum Beispiel:

  • Ich muss mich nicht mehr um lokales Backup kümmern
  • Fehler können leicht rückgängig gemacht werden
  • Die Geschichte kann gepflegt werden

Andererseits hat es aber auch einige Nachteile, wie zum Beispiel:

  • Zusätzliche Ressourcen erforderlich
  • Zeit zum Einrichten, Gewöhnen usw.

Ist es Ihrer Erfahrung nach eine gute Sache, die Versionskontrolle zu verwenden, wenn Sie alleine arbeiten?

RoflcoptrException
quelle
Meine zwei Cent: Ich verwende Mercurial und NetBeans und der wertvollste Teil des VCS, den ich verwende (Mercurial), besteht darin, Änderungen vornehmen zu können, die Änderungen zu überprüfen und sie zu löschen (Festschreiben) (Dateien zu einem Zeitpunkt oder das gesamte Projekt). in meiner Freizeit. (NetBeans hat einen grafischen Unterschied, der mit Mercurial funktioniert.) Es hilft mir, den Überblick über das zu behalten, was ich gerade getan habe. Unsere Firma hat ein anderes Historien- und Backup-System, daher verwende ich es normalerweise nicht für diesen Zweck.
Bryan Field

Antworten:

46

Ja.

Alles was es braucht ist ein einziger Fehler und du wirst dich selbst dafür rausschmeißen. Sie können auch auswählen, welches Versionskontrollsystem (VCS) verwendet wird. Wenn die Möglichkeit besteht, dass Sie in Zukunft in einem Entwicklungsteam arbeiten, ist dies eine gute Zeit, um praktische Erfahrungen mit einem VCS zu sammeln. SVN und Git (oder Mercurial) wären gute Ausgangspunkte und sollten nur ein paar Stunden in Anspruch nehmen, um die grundlegenden Befehle in jedem VCS zu verstehen.

Nun zu entlarven, was die negativen Punkte ...

1) Zusätzliche Ressourcen erforderlich

Die einzige Ressource, die benötigt wird, ist Speicherplatz. Da dies ein kleiner Prozentsatz (in Git kleiner als X ) Ihres gesamten Codes ist, denke ich nicht, dass dies ein Problem sein wird. Es kostet auch kein Geld.

2) Zeit zum Einrichten, Gewöhnen usw.

Es wird einige Zeit dauern, um es zu lernen, aber es sind nur einige Stunden (wie oben erwähnt). Längerfristig hat es das Potenzial, Ihnen unendlich viel Zeit (und so viel mehr) zu sparen. Sobald Sie die Grundlagen eines VCS beherrschen, ist es weitaus weniger aufwändig, als das lokale Backup durchzuführen, an das Sie denken.

Jonathan Khoo
quelle
5
+1: Sehr gute Punkte. Ich würde svn jedoch nicht empfehlen: Es erlaubt nicht, Änderungen vorzunehmen, wenn keine Verbindung zum Internet besteht, was manchmal eine starke Einschränkung sein kann. Ich würde Git (für Poweruser) oder Mercurial (für ein einfacheres System) empfehlen.
Eric O Lebigot
7
Eine weitere Abstimmung für Mercurial.
Chris Holmes
4
@EOL, SubVersion ist in diesem Fall möglich. Wenn das Repository lokal ist, ist keine Internetverbindung erforderlich, um Commits durchzuführen. (Obwohl ich vorschlagen würde, dass sich das Repository mindestens auf einem anderen Laufwerk als das Entwicklungslaufwerk befinden muss.)
Ken Henderson,
1
@EOL: Ah ja, ich habe vergessen, Mercurial einzuschließen, weil ich es vorher noch nicht benutzt habe. wird jetzt bearbeitet. Während (nach der Verwendung von Git) ich SVN nicht berühren würde, wenn ich müsste, ist SVN immer noch weit verbreitet.
Jonathan Khoo
1
@ken Svn mit einem lokalen Repo in Dropbox ist ideal für einen einzelnen Benutzer
Martin Beckett
13

Ja. Verwenden Sie es für alles. Verwenden Sie es für jedes Dokument, das Sie in Word schreiben. Verwenden Sie es für jeden Code, den Sie schreiben. Verwenden Sie es für jedes von Ihnen erstellte Bild.

Wenn Sie erst einmal gelernt haben, wie man es benutzt, sind Sie besser dran, wenn Sie in einer Teamumgebung arbeiten.

Davidhaskins
quelle
4
Das einzige Problem mit Word ist, dass es im Binärformat vorliegt diff. ein weiterer Grund, LaTeX zu verwenden.
Gablin
Was wäre der Sinn, es mit Bildern zu verwenden?
Turm
ZB WinMerge kann Word- und Excel-Dokumente unterscheiden
Simon
2
@Rook: Wenn Sie ein Bild bearbeiten, können Sie bei Bedarf jederzeit zur alten Version zurückkehren.
Alex D
9

Ich liebe es, Git zu benutzen, wenn ich alleine arbeite. Wenn ich zum Beispiel in PHP arbeite, erstelle ich einfach ein Git-Repository in meinem lokalen Verzeichnis, das Apache bedient. Ich kann problemlos mit der Arbeit an einem neuen Feature (in einer Zweigstelle) beginnen und es auf meinem lokalen Computer testen. Wenn sich dann etwas ereignet und ich eine "Notfallkorrektur" vornehmen muss, ist dies ganz einfach:

git checkout master

Voila! Mein Arbeitsverzeichnis befindet sich wieder in dem Zustand vor meiner Niederlassung. Ich kann die schnelle Lösung machen. Wenn ich fertig bin, kann ich wieder in den Zweig wechseln und mich weiterentwickeln.

Die Lernkurve ist nicht sehr steil und es gibt viele Informationen online, die Ihnen den Einstieg erleichtern. Grabe dich hinein. Das ist es wert.

TaylorOtwell
quelle
Git zusammen mit GitHub oder Gist sind die Mühe wert für Solo-Projekte. Sie schützen Sie vor sich selbst und machen es wirklich einfach, Hilfe zu erhalten, wenn Sie bereit sind, sich auf andere einzulassen.
Rob Allen
5

Das Changelog bietet Ihnen einen guten Ort, um Ihre Änderungen zu dokumentieren, ohne die Quelle zu überladen.

Joris Geer
quelle
2

Gehen Sie für etwas wie SourceRepo gehostet. Ist nicht zu teuer, aber die Verwendung der Quellcodeverwaltung erleichtert das Rückgängigmachen von Fehlern und das Zurücksetzen von Code erheblich.

Bei Bedarf können Sie von überall darauf zugreifen.

James Love
quelle
4
Möglicherweise möchten Sie beim Hochladen von Unternehmenseigenschaften auf externe Server vorsichtig sein. Es mag für einige Unternehmen in Ordnung sein, aber andere würden die Stirn runzeln.
Davidhaskins
1
Ein guter Punkt, auf den Sie achten sollten. Submitter sagte Projekte für sich selbst, also nahm ich an, dass es für den persönlichen Gebrauch war, aber stellen Sie auf jeden Fall sicher, dass die Vorgesetzten über das System Bescheid wissen, für das Sie sich entscheiden (insbesondere, wenn sie Cloud-phobisch sind).
James Love
2

Ich habe git immer für meine Entwicklung verwendet, bis mir klar wurde, dass ich es auch für andere Dinge verwenden kann. Probieren Sie git aus, es gibt Ihnen ein echtes Repository, ohne dass Sie einen Server und eine ständige Verbindung benötigen (das ist ein großes Plus für mich). Es werden nicht die Unterverzeichnisse Ihres Projekts mit versteckten Dateien und Ordnern verteilt, stattdessen befindet sich nur ein Ordner oben im Projekt. Sie können alles werfen und klonen, was Sie wollen, und sie wieder zusammenführen, dass es einfach funktioniert.

Coyote21
quelle
2

Wenn Sie auf der Suche nach kostenlosem Support für Closed Source sind, sollten Sie sich Visual Studio Online genauer ansehen. Es ist kostenlos für bis zu 5 Entwickler und für dich selbst ... na ja. Dies ist ein Beitrag 4 Jahre später, daher hat sich Ihre Situation wahrscheinlich geändert, aber für andere Entwickler, die eine einfache Quellcodeverwaltung suchen, ist VSO eine meiner bevorzugten Optionen, wenn ich meinen Quellcode nicht offen legen möchte. IIRC Github ist nur für Open Source-Produkte kostenlos, die Preise sind jedoch sehr günstig. Sowohl VSO als auch Github lassen sich sehr gut in Visual Studio integrieren, wenn dies die IDE Ihrer Wahl ist.

Bill Sambrone
quelle
Und VSO unterstützt jetzt Git! Auf Wiedersehen klobiger alter TFVC!
RubberDuck
1

Ich habe immer die Quellcodeverwaltung für meine eigenen Projekte eingerichtet, mit einer kontinuierlichen Integrationsumgebung, um bei jedem Einchecken Komponententests zu erstellen / auszuführen / Integrationsprüfungen auszuführen. Wenn es sich um eine Webanwendung oder einen Windows-Dienst handelt, muss er Ziele bereitstellen auch. Ich habe mir unzählige Stunden beim Debuggen und Bereitstellen mit dieser Methode erspart und ist nichts im Vergleich zum anfänglichen Einrichten.

aceinthehole
quelle
1

Ein weiteres cooles Feature bei Repos ist, dass Sie in einem anderen Zweig wirklich riskante Experimente / Features durchführen können. Wenn es funktioniert, können Sie als Teil Ihres Hauptcodes zusammenführen. Wenn dies nicht der Fall ist oder Sie keine Zeit mehr haben, können Sie es aufgeben (speichern) und zu Ihrem Hauptcode zurückkehren, wobei Sie die Option haben, später dorthin zurückzukehren, ohne dass dies Ihre Hauptcodebasis durcheinander bringt.

Chaostheorie
quelle