[linux-l] Re: Versionskontrollen
Steffen Dettmer
steffen at dett.de
Mo Jan 22 20:05:19 CET 2007
* Rocco Rutte wrote on Mon, Jan 22, 2007 at 14:04 +0000:
> * Steffen Dettmer [07-01-21 16:11:14 +0100] wrote:
> > * Volker Grabsch wrote on Sun, Jan 21, 2007 at 12:54 +0100:
>
> > > Besteht dein Feature hingegen aus meheren Changesets (mehreren
> > > "commits"), musst du in Subversion einen Branch anlegen. Insbesondere
> > > müssen beide Entwickler jeweils online sein, und der Branch muss
> > > vorher explizit angelegt werden.
>
> > WAS?! Stimmt das so? Wäre ja noch ein extremer CVS Vorteil (dass man
> > branches nicht /vorher/ anlegen muss - weil man vorher vielleicht gar
> > nicht weiss, dass man einen braucht)! Aber glaube ich erstmal nicht. So
> > schlecht kann SVN ja nu auch nicht sein.
>
> Was heisst denn "vorher"? Man kann Branches (also Kopie von xyz) zu
> jeder Zeit natürlich anlegen und löschen. Mann muss vor der
> Entwicklung eines Topics in einer Branch natürlich explizit die Branch
> anlegen (wie in jedem anderen VCS auch), aber wieviel History das
> eigentliche Repository schon hat ist dabei natürlich egal.
Bei CVS muss man den Branch nicht *vorher* anlegen. Man kann ein
sticky-Tag auschecken, drauf rumpatchen und dann branchen und
einchecken. Geht einfach so. Ist ja wichtig, weil man ja vorher gar
nicht immer weiss.
> Meine Vermutung ist, dass es nur ein übler Hack war, den sie jetzt nicht
> mehr los werden. Die Kopie ist schon sinnvoll, weil es als Cheapcopy
> implementiert wird, d.h. DB-seitig solltest du beim Anlegen von
> Tags/Branches mit Subversion keinen neuen Speicher brauchen, nur eben
> bei Änderungen.
Ja, mag sein :)
sinnvoll/Cheapcopy/implementiert/DB-seitig
---> Implementierungsdetails, interessiert mich als Benutzer nicht.
> > Ich finde eher, die Branches in Form von Kopien sind technisch eine
> > Kette, aber logisch gar keine Kopien (sondern Branches) und sehr wohl
> > gerichtete Graphen. Da hat bloss jemand ein Implementierungsdetail als
> > Feature verkauft.
>
> Von der menschlichen Logik sind Branches immer Graphen, aber für
> Subversion eben nicht. Es gibt da nur Pfade und Revisionsnummern. Dass
> du jetzt branches/xyz als eine Branch und trunk/ als Hauptlinie
> interpretierst, interessiert subversion nicht. Es gibt nur eine lineare
> Liste von Änderungen an Pfaden, die mit einander etwas zu tun haben
> können aber nicht müssen.
Also weiss ein Branch nicht, wo er herkommt? Wenn ich aus Versehen copy
"a/b branche/mybranch/a/c" mache, und b und c evtl. noch ähnlich sind,
hab ich einfach mal verloren oder wie? Wie kann ein SVN admin Fehler von
Usern dann erkennen und korrigieren?
oki,
Steffen
--
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.
Mehr Informationen über die Mailingliste linux-l