Hallo nocheinmal!
Ich wollte hier mal noch ein paar Sätze zu den verschiedenen Versionen verlieren:
ngircd-<x.y.z>.tar.gz --------------------- Das sind die "stabilen" Release-Versionen. Zu erkennen sind sie leicht an der entsprechenden Versionsnummer. Die aktuelle Release-Version (z.Zt. 0.5.2) ist eigentlich immer "stabil": sollten sich gravierende Fehler finden, so werden diese behoben und es gibt ein neues Release in der 0.5.x-Reihe.
CVS branch-0.5.x ---------------- Das ist der "Branch" (zu Deutsch: Teil) des CVS-Repository, aus dem die Release-Verionen entstehen. D.h. jede Release-Version gab bzw. gibt es auch mal in diesem CVS-Branch. Zur Zeit ist die CVS-branch-0.5.x-Version identisch mit der Release Version 0.5.2. Sollten Bugfixe nötig werden, so spiele ich diese zunächst in den branch-0-5-x ein und -- wenn sie sich als stabil erweisen -- erstelle dann daraus eine neue Version in der Reihe 0.5.x.
CVS HEAD -------- Das ist der "Kopf" der CVS-Repository: hier baue ich neue Funktionen und Erweiterungen ein, die somit erstmal noch weitestgehend ungetestet sind und durchaus auch mal "nicht stabil" sein können. Kleinere Verbesserungen, die relativ unkritisch sind, haben gute Chancen, aus dem CVS-HEAH in den branch-0-5-x übernommen zu werden und somit auch im nächsten 0.5.x-Release zu landen. Größere Erweiterungen werde ich aber nicht mehr in die 0.5.x-Reihe "zurück portieren" ("backport"), sie werden dann erst im nächsten größeren Release zu finden sein: 0.6.x (dafür gibt es dann wieder einen CVS-Branch).
Eine Grafik:
^ | CVS-HEAD | 0.5.0 0.5.1 0.5.2 | | | | +-- branch-0-5-x --+-------+-------+---> | | 0.4.0 0.4.1 0.4.2 0.4.3 | | | | | +-- branch-0-4-x --+-------+-------+-------+ | | 0.0.1
Welche Version ist "die richtige"? ---------------------------------- Jeder, der das Wort "Compiler" nicht aussprechen kann, sollte auf jeden Fall eine Release-Version (tar.gz) verwenden. Alle, die Wert auf einen stabil laufenden Server legen, sollten die jeweils aktuelle CVS-Version aus dem branch-0-5-x verwenden. Mutige und Leute, die aktiv am ngIRCd entwickeln wollen, sollten wohl die CVS-HEAD-Version verwenden.
"Branch-Version" aus dem CVS ---------------------------- a) es existiert bereits ein CVS-Source-Tree: dieser kann mit folgendem Befehl (im Source-Tree!) konvertiert werden: cvs update -r branch-0-5-x
b) ein neuer "Checkout" soll durchgeführt werden: cvs -d:pserver:anonymous@arthur.ath.cx:/usr/local/CVS/ngircd checkout -r branch-0-5-x
Achtung: In beiden Fällen heißt der Source-Ordner "ngircd". Er kann aber -- auch in beiden Fällen -- problemlos von Hand umbenannt werden, der Name spielt später keine Rolle mehr.
Zur Bedienung von CVS gibt es unter http://www.cvshome.org/docs/manual/cvs.html noch vieeel mehr :-)
Announces hier in der ML ------------------------ Alle Release-Versionen kündige ich selbstverständlich inklusive komplettem ChangeLog hier an (wie auch auf Freshmeat.net). Für wesentliche CVS-Updates (sowohl HEAD als auch in einem Branch) schreibe ich eine kurze Mail an diese ML. Wenn ich in diesem Fall von "HEAD" schreibe, hat ihr natürlich nichts zu updaten, wenn ihr eine Branch-Version verwendet und vice versa :-)
Und nun viel Spaß, hoffe, alle Klarheiten beseitigt zu haben! ;-))
Grüße Alex
PS.: diese ML ist durchaus auch zum Diskutieren und Fragen-Stellen gedacht & geeignet :-)