Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#25

AW: Mercurial Struktur aufbauen (Benötige Hilfe)

  Alt 12. Jun 2014, 19:40
Disclaimer vorneweg: Ich möchte hier niemanden bekehren oder so. Ich persönlich finde halt, das durch den stärkeren Fokus der gesamten Entwickler-Community auf Git hier einfach deutlich mehr Potential ist als bei Hg, das früher deutlich die Nase vorne hatte (zumindest auf Windows).

Mercurial hat mir ein Freund empfohlen, da er gesehen hat, dass ich das ganze mit SVN machen wollte. Darauf hin habe ich mir SourceTree und Mercurial heruntergeladen und ausprobiert und fand es recht übersichtlich. Und durch die Übersichtlichkeit habe ich mich dann dazu entschieden eine entsprechende Umgebung für mich aufzubauen, wie in meinem ersten Beitrag beschrieben.
Ah, Sourcetree
Dann hast Du grundsätzlich mal kein Problem, denn SourceTree kann mindestens genauso gut mit Git umgehen wie mit Mercurial.

Ich habe vor ein paar Jahren mal SVN ausprobiert und bin damit auf die Schnauze gefallen. Zum Schluß war so ein heilloses durcheinander, dass ich ganze 4 Tage gebraucht habe meinen Quelltext wieder herzustellen.
Wow. Was ist da denn passiert? Also grundsätzlich ist SVN auch recht cool.

Wo liegen die Unterschiede zwischen Mercurial und Git ? Ich habe mal versucht einen Git Client unter Windows zu installieren um dann ein Open-Source Repository zu ziehen, was leider fehlschlug. Bei SourceTree in Verbindung mit Mercurial fand ich das Anlegen eines Repositories sehr einfach. Einfacher als unter SVN zum Beispiel.
Git ist etwas Feature-reicher als Mercurial. Hier muss man sich immer mit Plugins im Repo rumschlagen wenn man mal was ausser der Reihe machen will, was mit Git gleich out of the box geht. Wobei der Standard-Funktionsumfang von beiden reicht aber eigentlich in 99,999% aller Fälle die man im normalen tagtäglichen Umfang braucht aus. Ausser einer Ausnahme: Versuche mal bei Mercurial, einen named branch zu löschen. Viel Spass beim history strippen...
Hier gibt es einen (imho) sehr guten Artikel zu den Unterschieden: http://www.rockstarprogrammer.org/po...urial-and-git/

Git für Windows gibts hier: http://git-scm.com/download/win Und ich installiere das ganz normal mit den Default settings, so dass Git (und nur git) im Path sitzt.

Ein Entferntes Repo dann lokal auszuchecken ist dann so einfach wie:
Code:
git clone https://github.com/gingters/EKON16_JavaScript.git
Wenn Du das dann - egal ob Git oder Hg - wirklich professionell einsetzen willst, dann wird man - obwohl beides ja per se verteilte Systeme sind - trotzdem irgendwo ein Repository anlegen und als 'master' deklarieren, zu dem alle ihre Changes pushen werden und von dem alle die anderen Changes pollen werden. Ggf. über andere zwischenrepos oder auch nicht, aber es sollte grundsätzlich irgendeinen Punkt im System geben, der einem Backup unterliegt und von dem z.B. das CI-System aus alle Changes automatisch auscheckt, baut, Unit- und Integration Tests laufen lässt und aus dem man dann am Ende die Releases baut.

Du willst dafür aber nicht viele Repositories von Hand anlegen und ggf. dort Rechte verwalten (das ist dann auch der Punkt wo jedes System irgendwann eklig wird, sei es SVN, Git oder auch Hg). Für Git gibt es hier z.B. das freie GitLab (https://gitlab.com), das eine Ruby-Weboberfläche bietet um Zentral Repositories und Rechte zu verwalten (inkl. AD-Integration etc.). Für Mercurial kenne ich jetzt nur HgLab (http://hglabhq.com/) das aber kostenpflichtig ist. Als weitere Kostenpflichtige Lösung bietet sich z.B. Stash von Atlassian an, das kann sogar Hg und Git gemeinsam.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat