[Umfrage] CVS-Alternativen: Git, SVN etc...
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Ausserdem ist die Codebasis einfach zu unterschiedlich, als daß man das problemlos wieder zusammenführen könnte / wollte. So lange ich noch auf der TD das "richtige" Neutrino im Einsatz habe, werde ich die eine oder andere Sache parallel pflegen, aber wenn das nicht mehr der Fall ist, dann: It's dead, Jim
Es geht ja schon los, dass manche Features halt nur mit aktuellen Libs schmerzfrei machbar sind, aber da geht der dbox der FLASH aus. Oder halt manche Sachen (PNG-Icons, skaliert) den Prozessor vermutlich überfordern werden.
Und nicht zu vergessen - das sind alles Features, die auf der dbox zu 90% nicht wirklich sinnvoll sind, insofern macht es keinen Sinn, die Entwicklung für die "großen" Boxen auszubremsen, nur weil der Code ständig auch noch auf der dbox getestet werden muss.
Es geht ja schon los, dass manche Features halt nur mit aktuellen Libs schmerzfrei machbar sind, aber da geht der dbox der FLASH aus. Oder halt manche Sachen (PNG-Icons, skaliert) den Prozessor vermutlich überfordern werden.
Und nicht zu vergessen - das sind alles Features, die auf der dbox zu 90% nicht wirklich sinnvoll sind, insofern macht es keinen Sinn, die Entwicklung für die "großen" Boxen auszubremsen, nur weil der Code ständig auch noch auf der dbox getestet werden muss.
-
- Developer
- Beiträge: 809
- Registriert: Montag 4. Juli 2005, 18:45
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Hm,
das ist alles nachvollziehbar. Ging mir mit dem yWeb ja auch so, dass ich meine Ideen auf Grund von zu gerigem Platz und Performance nicht umsetzen konnte (dbox).
Aber mehrere komplett getrennte Entwicklungsstränge zu betreuen, habe ich auch keine Lust.
Ich finde die Anstregungen von seife sehr lobenswert, aber auch dies wird die unterschiedlichen Versionen - letztendlich aus oben genannten Gründen - nicht zusammenführen. Puh.
Nun wird es schon zu sehr Off-Topic.
Wie gesagt, denkt bitte daran, dass wir keine weiteren Devs verlieren.
Gruß
yjogol
das ist alles nachvollziehbar. Ging mir mit dem yWeb ja auch so, dass ich meine Ideen auf Grund von zu gerigem Platz und Performance nicht umsetzen konnte (dbox).
Aber mehrere komplett getrennte Entwicklungsstränge zu betreuen, habe ich auch keine Lust.
Ich finde die Anstregungen von seife sehr lobenswert, aber auch dies wird die unterschiedlichen Versionen - letztendlich aus oben genannten Gründen - nicht zusammenführen. Puh.
Nun wird es schon zu sehr Off-Topic.
Wie gesagt, denkt bitte daran, dass wir keine weiteren Devs verlieren.
Gruß
yjogol
-
- Erleuchteter
- Beiträge: 625
- Registriert: Samstag 8. September 2007, 16:17
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Früher oder später werden mangels HW die Devs alle weg sein wenn keiner den Kram migriert. Aber ich verstehe deinen Einwand. Derzeit müsstest du dein yWeb für 2 Plattformen separat pflegen. IMO hast du folgende Möglichkeiten:
- Du lässt das was im Tuxbox CVS ist gut sein und machst mit den rechenintensiven Spielereien für die schnelleren Boxen weiter und nutzt die neuen Umgebungen
- Du versuchst irgendwie eine Version zu kreieren die auf allen Plattformen rennt. Wo die dann gehostet wird ist dann ja Jacke wie Hose.
- Du lässt das was im Tuxbox CVS ist gut sein und machst mit den rechenintensiven Spielereien für die schnelleren Boxen weiter und nutzt die neuen Umgebungen
- Du versuchst irgendwie eine Version zu kreieren die auf allen Plattformen rennt. Wo die dann gehostet wird ist dann ja Jacke wie Hose.
-
- Contributor
- Beiträge: 1608
- Registriert: Samstag 28. Juli 2001, 00:00
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Ich hab zwar die Dieskussion neu aufleben lassen.
Bin selber aber auch dafür das wir bei CVS bleiben.
Da ich den Server soweit wieder am laufen habe ohne ihn neu aufsetzten zu müssen, wäre ein Umstellung ja auch wieder Arbeit von der ich noch nicht weiss wann ich sie machen könnte.
Übrigens ist der Server am Sammstag Mittag kurz down, weil ich da die Festplatten tausche.
Grüße
Derget
Bin selber aber auch dafür das wir bei CVS bleiben.
Da ich den Server soweit wieder am laufen habe ohne ihn neu aufsetzten zu müssen, wäre ein Umstellung ja auch wieder Arbeit von der ich noch nicht weiss wann ich sie machen könnte.
Übrigens ist der Server am Sammstag Mittag kurz down, weil ich da die Festplatten tausche.
Grüße
Derget
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Spricht etwas dagegen, NeutrinoHD parallel zu Neutrino im Tuxbox CVS zu haben?
Solange die Schnittstellen gleich sind, dürfte yweb mit beiden Varianten
zusammenarbeiten können, wenn ich mich nicht irre.
Die Toolchain für die Coolstream ist schon im CVS, ebenso bauen die meisten
libs ebenfalls damit, der Schritt zu einem NeutrinoHD-Image dürfte dann nicht
mehr so groß sein.
Außer natürlich die Tatsache, dass es User gibt, die mit cdk/ aus dem
Tuxbox CVS nichts mehr zu tun haben wollen Ich für meinen Teil plane
auf absehbare Zeit kein Engagement für die Coolstream, da mir die DBox2
vollkommen ausreicht.
Solange die Schnittstellen gleich sind, dürfte yweb mit beiden Varianten
zusammenarbeiten können, wenn ich mich nicht irre.
Die Toolchain für die Coolstream ist schon im CVS, ebenso bauen die meisten
libs ebenfalls damit, der Schritt zu einem NeutrinoHD-Image dürfte dann nicht
mehr so groß sein.
Außer natürlich die Tatsache, dass es User gibt, die mit cdk/ aus dem
Tuxbox CVS nichts mehr zu tun haben wollen Ich für meinen Teil plane
auf absehbare Zeit kein Engagement für die Coolstream, da mir die DBox2
vollkommen ausreicht.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Die Schnittstellen sind nicht gleich.
Hast du dich mal gefragt, warum es keinen ordentlich funktionierenden nhttpd auf der TD gibt?
Weil selbst da die Schnittstellen schon ausreichend unterschiedlich sind. Zum Programme umschalten reicht es noch, aber das war's vermutlich auch schon.
Und ein Projekt, was schon von CVS weg ist wieder dorthin zurückzumigrieren, halte ich für -ähem- unklug.
Achso - wegen der schon wieder geänderten Abstimmung: "CVS / GIT als synchronisierte repos" gibt es nicht. Man kann nicht bidirektional mit CVS und GIT arbeiten. Das geht mit SVN, wenn man diszipliniert ist, aber mit CVS nicht.
Hast du dich mal gefragt, warum es keinen ordentlich funktionierenden nhttpd auf der TD gibt?
Weil selbst da die Schnittstellen schon ausreichend unterschiedlich sind. Zum Programme umschalten reicht es noch, aber das war's vermutlich auch schon.
Und ein Projekt, was schon von CVS weg ist wieder dorthin zurückzumigrieren, halte ich für -ähem- unklug.
Achso - wegen der schon wieder geänderten Abstimmung: "CVS / GIT als synchronisierte repos" gibt es nicht. Man kann nicht bidirektional mit CVS und GIT arbeiten. Das geht mit SVN, wenn man diszipliniert ist, aber mit CVS nicht.
-
- Developer
- Beiträge: 809
- Registriert: Montag 4. Juli 2005, 18:45
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Nun ja,
nur für das yWeb gesprochen.
Der Code von yWeb 2.8 ist jetzt auf beiden Boxen (dbox, Coolstream) lauffähig. Aber wie schon Barf oben erwähnt hat, nur mit #ifdef etc.
Ist nicht besonders schön, aber läuft gut.
Tja mir ist noch nicht klar, ob ich den Support für die dboxen einstelle oder es einen "vertretbaren" Weg gibt, beides zu bedienen.
Bei mir persönlich kommt hinzu, dass ich wirklich sehr wenig Zeit habe und keinen große Aufwand über das eigentliche Programmieren hinaus betreiben möchte.
yjogol
nur für das yWeb gesprochen.
Der Code von yWeb 2.8 ist jetzt auf beiden Boxen (dbox, Coolstream) lauffähig. Aber wie schon Barf oben erwähnt hat, nur mit #ifdef etc.
Ist nicht besonders schön, aber läuft gut.
Tja mir ist noch nicht klar, ob ich den Support für die dboxen einstelle oder es einen "vertretbaren" Weg gibt, beides zu bedienen.
Bei mir persönlich kommt hinzu, dass ich wirklich sehr wenig Zeit habe und keinen große Aufwand über das eigentliche Programmieren hinaus betreiben möchte.
yjogol
-
- Erleuchteter
- Beiträge: 625
- Registriert: Samstag 8. September 2007, 16:17
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Hab da mal ein wenig rumprobiert damit. Ist eher gaga in meinen Augen. Aber evtl. blicke ich das zusammenspiel GIT<->SVN auch einfach noch nicht so richtig...seife hat geschrieben:Das geht mit SVN, wenn man diszipliniert ist, aber mit CVS nicht.
-
- Erleuchteter
- Beiträge: 625
- Registriert: Samstag 8. September 2007, 16:17
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Auch wenn die Schnittstellen gleich wären, wie willst du das handhaben auf Dauer? Die Coolstream Devs pushen in ihr SVN Repo und nur dorthin. Jemand müsste also ständig darum bemüht sein den Code ins CVS zu ziehen und zu kucken das alles schön mit dem Tuxbox CDK kompatibel bleibt damit all der Krempel da immer ohne Fehler gebaut werden kann. Im Anbetracht der Geschwindigkeit in der Änderungen derzeit ins CS SVN einfliessen vermutlich eine tagesfüllende Aufgabe.rhabarber1848 hat geschrieben:Spricht etwas dagegen, NeutrinoHD parallel zu Neutrino im Tuxbox CVS zu haben?
-
- Tuxboxer
- Beiträge: 2331
- Registriert: Donnerstag 24. März 2005, 21:52
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
warum wollt ihr umstellen ? wegen coolstream ? andere boxenherstellen nutzen vielleicht wieder ein andres system.
sämtliche anleitungen und jahrelange erfahrungen werden zunichte gemacht.
ich denke wenn mal das ende der dbox2 besiegelt ist dann sollte man komplett umstellen.
sämtliche anleitungen und jahrelange erfahrungen werden zunichte gemacht.
ich denke wenn mal das ende der dbox2 besiegelt ist dann sollte man komplett umstellen.
-
- Neugieriger
- Beiträge: 4
- Registriert: Montag 26. November 2007, 00:36
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
DBox2 ist CVS. Egal ob Enigma oder Neutrino. Coolstream kam mit GIT und die sh4-Systeme, ob e1, e2, Neutrino oder vdr haben das übernommen. UNd sochh ich euch was sagen? Das ist alles Mist, So schöne Tools wie SmartCVS sind doch einfach Klasse!mb405 hat geschrieben:warum wollt ihr umstellen ? wegen coolstream ? andere boxenherstellen nutzen vielleicht wieder ein andres system.
sämtliche anleitungen und jahrelange erfahrungen werden zunichte gemacht.
ich denke wenn mal das ende der dbox2 besiegelt ist dann sollte man komplett umstellen.
Sinnvoller wäre es nach meiner Bescheidenen Meinung die Coolie und sh4 auf cvs umzubauen und das git zu beerdigen!
git:
cvs:
Darum habe ich für cvs gestimmt!
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Mal ehrlich, für die paar Sachen die hier noch ab und an ins CVS einfließen, die auch wirklich
noch was bringen (z.B. HDD-Menü), reicht das CVS alle male. Von den 800 Patchen des letzten
halben Jahres, waren doch bestimmt 600 nur für's Buildsystem und haben Neutrino für die Dbox
nicht um Quantenspünge weitergebracht. Die Interessen der Codeversteher und Könner wird
über kurz oder lang in Richtung Coolstream wandern. Ein Bruchteil von denen die man dort liest
melden sich hier manchmal kurz, das wars dann. Stellt man hier Patche zur Verfügung, hat man
in 5 Tagen oft nur 5 Downloads. Wozu dann noch umstellen. Wer hier dann noch Codepflege betreibt
möchte vielleicht das Altbewährte nutzen.
Im Endeffekt sollten nur die abstimmen, die auch Schreibrechte haben. Ob ich persönlich mir die
Sachen mit Git, SVN oder CVS auf den Rechner hole, ist Jacke wie Hose. Hauptsache es baut,
und der Server ist immer erreichtbar.
noch was bringen (z.B. HDD-Menü), reicht das CVS alle male. Von den 800 Patchen des letzten
halben Jahres, waren doch bestimmt 600 nur für's Buildsystem und haben Neutrino für die Dbox
nicht um Quantenspünge weitergebracht. Die Interessen der Codeversteher und Könner wird
über kurz oder lang in Richtung Coolstream wandern. Ein Bruchteil von denen die man dort liest
melden sich hier manchmal kurz, das wars dann. Stellt man hier Patche zur Verfügung, hat man
in 5 Tagen oft nur 5 Downloads. Wozu dann noch umstellen. Wer hier dann noch Codepflege betreibt
möchte vielleicht das Altbewährte nutzen.
Im Endeffekt sollten nur die abstimmen, die auch Schreibrechte haben. Ob ich persönlich mir die
Sachen mit Git, SVN oder CVS auf den Rechner hole, ist Jacke wie Hose. Hauptsache es baut,
und der Server ist immer erreichtbar.
Zuletzt geändert von GetAway am Freitag 19. Februar 2010, 21:57, insgesamt 1-mal geändert.
-
- Einsteiger
- Beiträge: 138
- Registriert: Samstag 5. September 2009, 20:39
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
finde ich super
Hat denn mal jemand von Euch die Abstimmung verfolgt?
Mal mehr pro GIT, mal weniger, wer schraubt denn da an der Abstimmung rum?
Jetzt konnte ich vorhin noch einmal neu abstimmen, obwohl ich meine Stimme schon abgegeben hatte.
Wenn die Abstimmung annuliert und neu angesetzt wurde, dann wäre es das Mindeste, die Leute darüber zu informieren. Tut mir leid, sowas hat mit Abstimmung nichts zu tun und läßt mich gerade an dem Forum hier zweifeln; wären wir in China, dann würde ich ja schon mit sowas rechnen, aber hier?
Fazit für mich: Ihr werdet schon das Ergebnis bekommen, was Ihr hier lesen wollt.
Übrigens: Was ich dazu wirklich schreiben wollte, habe ich mir absichtlich geklemmt.
Diese Abstimmung so ist ein Armutszeugnis!
Hat denn mal jemand von Euch die Abstimmung verfolgt?
Mal mehr pro GIT, mal weniger, wer schraubt denn da an der Abstimmung rum?
Jetzt konnte ich vorhin noch einmal neu abstimmen, obwohl ich meine Stimme schon abgegeben hatte.
Wenn die Abstimmung annuliert und neu angesetzt wurde, dann wäre es das Mindeste, die Leute darüber zu informieren. Tut mir leid, sowas hat mit Abstimmung nichts zu tun und läßt mich gerade an dem Forum hier zweifeln; wären wir in China, dann würde ich ja schon mit sowas rechnen, aber hier?
Fazit für mich: Ihr werdet schon das Ergebnis bekommen, was Ihr hier lesen wollt.
Übrigens: Was ich dazu wirklich schreiben wollte, habe ich mir absichtlich geklemmt.
Diese Abstimmung so ist ein Armutszeugnis!
-
- Einsteiger
- Beiträge: 268
- Registriert: Sonntag 3. September 2006, 14:13
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
ich konnte auch eben zum 2. mal abstimmen...
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Das war weil da noch eine Option dazugekommen ist. Die Boardsoft setzt dann alles zurück. Da kann man nichts dran ändern, geht dann wieder von vorn los. Und so schlimm isses auch nicht nochmal die Maus zu bewegen und da drauf zu klicken. Du kannst ja sowiso deine Abstimmung im Nachinein änderen. Hätte aber bescheid sagen können, ok Fehler vom Amt.
-
- Einsteiger
- Beiträge: 138
- Registriert: Samstag 5. September 2009, 20:39
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Stimmt, gerade noch geschafftdbt hat geschrieben:Und so schlimm isses auch nicht nochmal die Maus zu bewegen und da drauf zu klicken.
Aber egal, Du weißt bestimmt was ich meine...
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Zur Auswahl gibt es " CVS+GIT gemeinsame Repos, CVS als HEAD "
Ich will aber SVN und GIT wo beleibt die Demokratie ?
Martin
Ich will aber SVN und GIT wo beleibt die Demokratie ?
Martin
-
- Interessierter
- Beiträge: 42
- Registriert: Dienstag 8. Dezember 2009, 19:46
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
This mail seems to be shot up in my Inbox... I can understand general circular to registered members.....Trouble here is I do not know what in this message as I do not know German or say I am nil by German language.
-
- Einsteiger
- Beiträge: 268
- Registriert: Sonntag 3. September 2006, 14:13
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
google translated: http://translate.google.de/translate?hl ... start%3D60shylock_1 hat geschrieben:This mail seems to be shot up in my Inbox... I can understand general circular to registered members.....Trouble here is I do not know what in this message as I do not know German or say I am nil by German language.
-
- Einsteiger
- Beiträge: 111
- Registriert: Samstag 9. Februar 2008, 15:07
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Lohnt sich ein Umstieg wirklich - in meinem Berufsleben nannten wir das "Zugewinn an ...".
Git kenne ich auch nur dank google, es scheint ok, aber habe ich wirklich einen Zugewinn? Die DBox bleibt leider die alte und wird durch git nicht jünger! Der Zahn der Zeit nagt an ihr gewaltig.
Für die paar Jahre die ihr noch bleiben, wären mir andere Dinge wichtiger, wie da wären:
Radiotext - habe immer noch das Problem, dass der bei einigen Sendern erst nach 10 Min kommt.
Aufnahmefunktion bei Internetradio - Punkt 1 der Wunschliste.
Abspielen anderer Formate als ts ohne den Umweg über vlc.
IPTV
Ich weiß, einiges wird nicht gehen, aber träumen darf man - bleibt bei cvs!
Git kenne ich auch nur dank google, es scheint ok, aber habe ich wirklich einen Zugewinn? Die DBox bleibt leider die alte und wird durch git nicht jünger! Der Zahn der Zeit nagt an ihr gewaltig.
Für die paar Jahre die ihr noch bleiben, wären mir andere Dinge wichtiger, wie da wären:
Radiotext - habe immer noch das Problem, dass der bei einigen Sendern erst nach 10 Min kommt.
Aufnahmefunktion bei Internetradio - Punkt 1 der Wunschliste.
Abspielen anderer Formate als ts ohne den Umweg über vlc.
IPTV
Ich weiß, einiges wird nicht gehen, aber träumen darf man - bleibt bei cvs!
-
- Einsteiger
- Beiträge: 268
- Registriert: Sonntag 3. September 2006, 14:13
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
liab hat geschrieben:Lohnt sich ein Umstieg wirklich - in meinem Berufsleben nannten wir das "Zugewinn an ...".
Git kenne ich auch nur dank google, es scheint ok, aber habe ich wirklich einen Zugewinn? Die DBox bleibt leider die alte und wird durch git nicht jünger! Der Zahn der Zeit nagt an ihr gewaltig.
Für die paar Jahre die ihr noch bleiben, wären mir andere Dinge wichtiger, wie da wären:
Radiotext - habe immer noch das Problem, dass der bei einigen Sendern erst nach 10 Min kommt.
Aufnahmefunktion bei Internetradio - Punkt 1 der Wunschliste.
Abspielen anderer Formate als ts ohne den Umweg über vlc.
IPTV
Ich weiß, einiges wird nicht gehen, aber träumen darf man - bleibt bei cvs!
-
- Neugieriger
- Beiträge: 6
- Registriert: Mittwoch 19. September 2007, 11:35
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Git ist nicht übel aber ich setze mehr auf SVN, ist handlicher
-
- Tuxboxer
- Beiträge: 2331
- Registriert: Donnerstag 24. März 2005, 21:52
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
hehe also die abstimmung ist ok.
klar kann man neu abstimmen, nur eure alte stimme wird dann auf das neue gesetzt. sieht man am sternchen hinter den %
klar kann man neu abstimmen, nur eure alte stimme wird dann auf das neue gesetzt. sieht man am sternchen hinter den %
-
- Neugieriger
- Beiträge: 7
- Registriert: Freitag 23. Januar 2004, 09:52
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Hallo zusammen,
ich entwickele seit etwa 15 Jahren fast durchgehend mit RCS, CVS, SVN und Mercurial. Aktuell bevorzuge ich Mercurial und würde kein Projekt mehr mit RCS, CVS oder SVN anfangen. Wenn, würde ich GIT statt Mercurial verwenden.
Kurz zu den Unterschieden der Systeme:
RCS, CVS und SVN verwenden einen zentralen Server. CVS kann alles nur online, SVN kann darüber hinaus die aktuellen Änderungen (einen "diff") auch offline anzeigen und damit auch einen "revert", d.h. zurück zur Ursprungsfassung.
Mercurial, GIT, Bazaar, Monotone, Arch & Co sind verteilte Systeme. Hier braucht man keinen zentralen Server, es empfiehlt sich aber wärmstens. Bei diesen Systemen kann man ohne Kontakt zum zentralen Server alles machen, was die anderen nur online können, d.h. add/remove/commit/revert/update/log usw. Es gibt zwei zusätzliche Befehlen "push" und "pull", mit denen Änderungen zu einem anderen Server übertragen werden können.
Nun zu dem Thema Branches:
CVS und SVN können Branches, jippihayey! Das hilft aber in der Praxis nicht wirklich, denn was sie nicht (oder zumindest nicht benutzbar) können ist, zwei Branches wieder zu vereinen (Merge). Damit bringt ein Branch nicht viel (außer vielleicht eine Version zu archivieren), wenn man die zwei Zweige nicht mehr zusammenbringen kann. Ich habe Tag damit verbracht, ein svnmerge ohne Konflikte zum Laufen zu bringen. Es sieht zuerst so aus, als ginge es, aber wenn wirklich mehrere Entwickler mit eigenen Zweigen arbeiten und sich regelmäßig synchronisieren wollen, dann die kurze Zusammenfassung: es klappt nicht.
Mit Mercurial & Co sieht das ganz anders aus. Das Kern-Feature der verteilten Systeme ist nicht das Verteilen/Branchen, sondern der Merge. Kurze Zusammenfassung: es klappt! Und zwar richtig, immer, überall und auch wenn man zwischen den Entwicklern alles kreuz und quer synchronisiert. Warum klappt es? Weil sich die Verteilten Systeme merken, was wo wie synchronisiert wurde. CVS und SVN vergessen diese Information nach einem Merge und damit entsteht das Unglück. Die aktuelle SVN-Version hat etwas aufgeholt, aber es ist einfach nicht in dem Basiskonzept enthalten.
Wer die Unterschiede ausführlicher und mit sehr viel Hähme gewürzt erklärt bekommen will, der schaut sich diesen Vortrag von Linus Torvalds über GIT an:
http://www.youtube.com/watch?v=4XpnKHJAok8
"Und was ist mit GIT"?
Wie beschrieben verwende ich Mercurial und nicht GIT. Die beiden Systeme sind aber von Vorgehensweise gleich und deshalb recht gut vergleichbar. Mercurial ist in Python geschrieben, Git in C. Git wird von den Linux-Kernel Entwicklern entwickelt und ist darauf hin optimiert, Linux-Kernelcode zu verwalten. Die Unterschiede zu Mercurial: Git ist unter Linux ca. 10x schneller als Mercurial. Dies bedeutet, dass 3MB Quellcode inkl. ca. 2.000 Änderungen mit Mercurial in ca. 2s ausgecheckt sind, während Git es in 200ms hinbekommt. Für mich bedeutet dies keinen signifikanten Unterschied. Git war erst später unter Windows verfügbar und soll auch nicht so schnell sein. Die Integration von Mercurial in Entwicklungsumgebungen ist weiter fortgeschritten, als die von Git. Man sollte also prüfen, ob die verwendete Entwicklungsumgebung Git unterstützt. Die Entscheidung Git oder Mercurial ist aber gar nicht so schwerwiegend, denn es gibt Tools, die von einem in das andere Format konvertieren können, also das komplette Repository inkl. allen Änderungen.
Nun zu den Fragen:
Dies hat auch Vorteile, wenn es mal zu einem "Fork" eines Projektes kommt. Da kein Repository wirklich der "Chef" ist, kann man die zwei Teile jederzeit wieder zu einem Projekt vereinigen und das sogar ohne dass man sich darüber einig werden muss, welcher Repository-Server weiterverwendet und welcher entfernt wird. Es gibt einfach zwei gleichberechtigte Pfade, die wieder vereint werden. Man sieht der History später nicht an, wer "gewonnen" hat, da es so etwas gar nicht gibt.
Meine Empfehlung deshalb:
Verwendet Git oder Mercurial und vergesst CVS und SVN.
Soviel von meiner Seite dazu. Ich lese das Forum eher zufällig, deshalb bei Fragen am besten Mail an kurt bei huwig.de.
ich entwickele seit etwa 15 Jahren fast durchgehend mit RCS, CVS, SVN und Mercurial. Aktuell bevorzuge ich Mercurial und würde kein Projekt mehr mit RCS, CVS oder SVN anfangen. Wenn, würde ich GIT statt Mercurial verwenden.
Kurz zu den Unterschieden der Systeme:
RCS, CVS und SVN verwenden einen zentralen Server. CVS kann alles nur online, SVN kann darüber hinaus die aktuellen Änderungen (einen "diff") auch offline anzeigen und damit auch einen "revert", d.h. zurück zur Ursprungsfassung.
Mercurial, GIT, Bazaar, Monotone, Arch & Co sind verteilte Systeme. Hier braucht man keinen zentralen Server, es empfiehlt sich aber wärmstens. Bei diesen Systemen kann man ohne Kontakt zum zentralen Server alles machen, was die anderen nur online können, d.h. add/remove/commit/revert/update/log usw. Es gibt zwei zusätzliche Befehlen "push" und "pull", mit denen Änderungen zu einem anderen Server übertragen werden können.
Nun zu dem Thema Branches:
CVS und SVN können Branches, jippihayey! Das hilft aber in der Praxis nicht wirklich, denn was sie nicht (oder zumindest nicht benutzbar) können ist, zwei Branches wieder zu vereinen (Merge). Damit bringt ein Branch nicht viel (außer vielleicht eine Version zu archivieren), wenn man die zwei Zweige nicht mehr zusammenbringen kann. Ich habe Tag damit verbracht, ein svnmerge ohne Konflikte zum Laufen zu bringen. Es sieht zuerst so aus, als ginge es, aber wenn wirklich mehrere Entwickler mit eigenen Zweigen arbeiten und sich regelmäßig synchronisieren wollen, dann die kurze Zusammenfassung: es klappt nicht.
Mit Mercurial & Co sieht das ganz anders aus. Das Kern-Feature der verteilten Systeme ist nicht das Verteilen/Branchen, sondern der Merge. Kurze Zusammenfassung: es klappt! Und zwar richtig, immer, überall und auch wenn man zwischen den Entwicklern alles kreuz und quer synchronisiert. Warum klappt es? Weil sich die Verteilten Systeme merken, was wo wie synchronisiert wurde. CVS und SVN vergessen diese Information nach einem Merge und damit entsteht das Unglück. Die aktuelle SVN-Version hat etwas aufgeholt, aber es ist einfach nicht in dem Basiskonzept enthalten.
Wer die Unterschiede ausführlicher und mit sehr viel Hähme gewürzt erklärt bekommen will, der schaut sich diesen Vortrag von Linus Torvalds über GIT an:
http://www.youtube.com/watch?v=4XpnKHJAok8
"Und was ist mit GIT"?
Wie beschrieben verwende ich Mercurial und nicht GIT. Die beiden Systeme sind aber von Vorgehensweise gleich und deshalb recht gut vergleichbar. Mercurial ist in Python geschrieben, Git in C. Git wird von den Linux-Kernel Entwicklern entwickelt und ist darauf hin optimiert, Linux-Kernelcode zu verwalten. Die Unterschiede zu Mercurial: Git ist unter Linux ca. 10x schneller als Mercurial. Dies bedeutet, dass 3MB Quellcode inkl. ca. 2.000 Änderungen mit Mercurial in ca. 2s ausgecheckt sind, während Git es in 200ms hinbekommt. Für mich bedeutet dies keinen signifikanten Unterschied. Git war erst später unter Windows verfügbar und soll auch nicht so schnell sein. Die Integration von Mercurial in Entwicklungsumgebungen ist weiter fortgeschritten, als die von Git. Man sollte also prüfen, ob die verwendete Entwicklungsumgebung Git unterstützt. Die Entscheidung Git oder Mercurial ist aber gar nicht so schwerwiegend, denn es gibt Tools, die von einem in das andere Format konvertieren können, also das komplette Repository inkl. allen Änderungen.
Nun zu den Fragen:
Releases sind auf jeden Fall sinnvoll, um regelmäßig zu einem "stabilen Stand" zu kommen, auf dem anderen Entwickler aufsetzen können.dixidix hat geschrieben: Brauchen wir regelmäßige Releases oder reicht HEAD?
Wenn man ein Verteiltes System verwendet, dann stellt sich die Frage nicht. Jeder Entwickler hat automatisch seinen eigenen Branch, der regelmäßig mit anderen Branches abgeglichen wird. Ein Branch auf einem zentralen Server wird üblicherweise als der "Hauptzweig" bezeichnet. Rein technisch ist das lediglich eine Definition.dixidix hat geschrieben: Wie sinnvoll sind für uns Branches?
Dies hat auch Vorteile, wenn es mal zu einem "Fork" eines Projektes kommt. Da kein Repository wirklich der "Chef" ist, kann man die zwei Teile jederzeit wieder zu einem Projekt vereinigen und das sogar ohne dass man sich darüber einig werden muss, welcher Repository-Server weiterverwendet und welcher entfernt wird. Es gibt einfach zwei gleichberechtigte Pfade, die wieder vereint werden. Man sieht der History später nicht an, wer "gewonnen" hat, da es so etwas gar nicht gibt.
Bei Verteilten Systemen sind Branches "billig". Und Merges trivial. Macht jedes Feature in einen Zweig, dazu einen AllInOne-Zweig, gerade so, wie es einem in den Sinn kommt. Es ist alles vollkommen einfach zu handhaben.dixidix hat geschrieben: Ist ein Experimentier-Branch die AllInOne-Lösung?
Wenn man einen "stabilen Zweig" hat, dann weiß man als Entwickler, dass seine eigenen Änderungen und nicht die eines anderen Entwickler Probleme in der gerade von ihm getesteten Version macht.dixidix hat geschrieben: Welche Vor-oder Nachteile würde das bringen?
Die Verteilten Systeme machen das überflüssig. Patches lassen sich jederzeit automatisch generieren, sind aber auch nicht wirklich notwendig.dixidix hat geschrieben: Reicht uns die bisherige reine "Patch-Methode"?
Mit den verteilten Systemen hat man die freie Wahl, wie man vorgeht.dixidix hat geschrieben: Wann wäre welche Methode angebracht?
Man braucht zwei zentrale Systeme, die regelmäßig synchronisieren.dixidix hat geschrieben: Wie würde eine Koexisistenz von mehreren Versionsverwaltungssystemen aussehen?
Ja, sofern man keine der etwas esoterischen Features nutzt, die in dem jeweils anderen System nicht 1:1 existieren.dixidix hat geschrieben: Geht das überhaupt?
Meine Empfehlung deshalb:
Verwendet Git oder Mercurial und vergesst CVS und SVN.
Soviel von meiner Seite dazu. Ich lese das Forum eher zufällig, deshalb bei Fragen am besten Mail an kurt bei huwig.de.
-
- Neugieriger
- Beiträge: 6
- Registriert: Donnerstag 10. Januar 2008, 19:19
Re: [Umfrage] CVS-Alternativen: Git, SVN etc...
Ich habe beruflich mit CVS, SVN und nun auch GIT zu tun. Mein bevorzugtes SCM-System ist dabei SVN. Bei GIT hat es zwar derjenige, der sich um die Verwaltung der Branches und Versionszusammenstellung kümmert um einiges leichter, aber der eigentliche Softwareentwickler hat im Vergleich zu SVN dadurch einiges an "Mehrarbeit" ...