Einzelnen Beitrag anzeigen

Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#88

AW: Subversion und VisualSVN für Ein-Mann-Entwicklung

  Alt 8. Nov 2016, 10:35
Gibt es Fans von Mercurial, was ja auch in Delphi 10.1 integriert ist?
Ja, gibt es. Und ich würde es uneingeschränkt empfehlen. Zusammen mit TortoiseHg. Und falls du jemals deine Repositories online bereitstellen willst, bietet sich Bitbucket an.

Wenn du des Englischen mächtig bist empfehle ich noch die Lektüre von VCBE und hginit.com. Wobei ersteres auch für Freunde von Git interessant sein könnte.

Mercurial ist wie Git aber in benutzerfreundlich. Ich benutze notgedrungen auch immer wieder Git und das schon seit Jahren, konnte mich aber trotz der Lektüre zweier Bücher und zweier mehrstündiger Videokurse (von O'Reilly) nicht damit anfreunden. Seltsam, denn bei Mercurial ging das Lernen viel intuitiver vonstatten und mithilfe des entsprechenden Buches von O'Reilly ging auch der Einstieg in die fortgeschrittenen Themen einfach und schnell.

Will heißen, es handelt sich nicht um ein Vorurteil in Sachen Git.

So, und wer hier Git immer noch vorzieht kann mit jetzt erklären wie benutzerunfreundlich ein Kommandozeilenwerkzeug denn bitte sein kann, welches, wenn ich es um Hilfe bitte, anstatt mir eine Kurzhilfe anzuzeigen wie das bei --help nunmal gang und gäbe ist, mir auf Windows nen Browser mit dem Handbuch öffnet? Ernsthaft? Und abgesehen davon braucht man zur Lektüre des Handbuchs als Einsteiger noch ein Fachwörterbuch Git. Wenn man sich schon mit dezentralisierter Versionskontrolle auskennt, mag es nicht ganz so schlimm sein. Git, der wichtigste Hinweis steckt eigentlich schon im Namen.

Git ist ein zusammengefrickeltes Konglomerat von (Unix-)Shellskripten und kompilierten Programmen, was auf unixoiden Systemen auch hervorragend funktioniert. Für Windows wurden dann Brücken geschlagen, die auch halbwegs funktionieren. Mercurial ist eine Versionskontrolle mit Architektur und Design, die Dank Python, auf allen Systemen auf denen Python läuft auch gleich gut läuft.

So, viel Erfolg bei der Entscheidungsfindung.

Falls du jemals deine Entscheidung bereust, nimmste reposurgeon zum verlustfreien Konvertieren mit chirurgischer Kontrolle (um mögliche alte Narben in der Versionshistorie auszubügeln).

Nachtrag:
Subversion wird bei größeren Projekten gern mal a****langsam. Außerdem kannste dir zwar alle Zweige und so weiter auschecken, hast dann aber ein vielfaches der Größe des SVN-Repos (Größe auf dem Server) bei dir rumliegen. Eine Konvertierung von SVN auf Mercurial oder Git spart meiner Erfahrung nach 80% Platz ein. Und das ist für das Repo selbst. Also auf dem SVN Server > 30 GiB und als Mercurial Repo (ohne etwas rauszuwerfen) ~ 6 GiB. Besagtes Repo als Arbeitskopie wiegt bei SVN mal gut über 100 GiB. Kommt natürlich einfach auf die Menge der Zweige und Tags an.

Bei Subversion ist aus meiner Sicht das schlimmste die Vermischung des Konzepts der Zweige und Tags mit dem von Pfadnamen. Bazaar hat das zum Teil auch kopiert. Auch sind Tags nur entsprechend der üblichen Konvention Tags. Prinzipiell hält dich niemand davon ab in einen Tag eine Änderung einzuchecken. Es sei denn der Admin war clever und hat diese Pfade mit irgendwelchen Hookskripten geschützt (was aber leider auch nicht trivial ist).
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)

Geändert von Assarbad ( 8. Nov 2016 um 10:43 Uhr)
  Mit Zitat antworten Zitat