Indyaner: Versionsnummern benutzen

Hi

Ich arbeite seit einiger Zeit an einem grösseren Projekt-
So langsam komme ich mit den daten durcheinander und auch meine Backups sind bisher nur Datums-technisch sortiert.

Ich würde da gerne eine Versionsnummern-Technik reinbringen. Doch wie macht man das am besten?

Wann bekommt das Proejekt eine neue Versionsnummer? Wie makiere ich die Daten dafür? Wie Nummeriert man die Schritte? (0.1-Schritte für Patches, 1.0 Schritte für grössere Updates?)

Hört sich etwas komisch an die frage, ich weiss...

ciao

  1. 你好 Indyaner,

    Wann bekommt das Proejekt eine neue Versionsnummer? Wie makiere ich die
    Daten dafür? Wie Nummeriert man die Schritte? (0.1-Schritte für Patches,
    1.0 Schritte für grössere Updates?)

    GNU hat mal ein Schema festgelegt: Major.Minor.Patch. Eine Aenderung im
    Major-Bereich bedeutet hierbei, dass zwei Versionen zueinander inkompatibel
    sind weil z. B. die API und/oder grosse Teile des Sourcecodes geaendert
    wurden. Eine Aenderung im Minor-Bereich beinhaltet Kompatiblitaet
    Source- und Binaer-Kompatiblitaet, wobei Source-Kompatiblitaet meint, dass
    andere Projekte mit diesem Sourcecode kompiliert werden koennen und
    Binaer-Kompatiblitaet meint, dass eine bereits kompilierte Applikation
    nicht erneut kompiliert werden muss. Eine Aenderung im Patch-Bereich
    deutet auf eine reine Fehler-Bereinigung hin.

    再见,
     CK

    --
    Die Stärke des Geistes ist unendlich, die Muskelkraft dagegen ist begrenzt.
    http://wwwtech.de/
    1. Projektnummer_Bezeichnung_Datum_Version.Dateityp

      0815_Code_Output_05-04-08_V01.txt

      Grüße

      Franz

  2. Hi

    Ich würde da gerne eine Versionsnummern-Technik reinbringen. Doch wie macht man das am besten?

    Mit einem der am Markt erhältlichen (C)VSe?
    Aber Scherz beiseite. Wichtig ist ja eigentlich nur:

    Wann bekommt das Proejekt eine neue Versionsnummer?

    Und da hat Dir der Christian ja schon die GNU-Version nahegelegt. Aufgrund der Dreiteilung eignet sich das ebenfalls von ihm beschriebene Nummerierungssystem auch sehr gut.
    Eienn Nachtrag habe ich noch, falls Dir das mal auffallen sollte: Opensourceprojekte laufen nicht immer genau auf einem Strang, wie z.B. das Linux-Kernelprojekt. Da gibt es einige Nebenzweige, die sich hinund wieder und meist auch nur teilweise überschneiden. Die werden z.B. im o.a. Linuxprojekt mit angehangenen Namenskürzeln (meist die Initialen) gekennzeichnet, also z.B. 2.4.24ac für einen Zweig des Kernels 2.4.24 den Alan Cox in Arbeit hat.

    Das ist dann aber wirklich nur für _sehr_ große Projekte geeignet, die zudem _sehr_ individuelle Mitarbeiter haben.

    Wie makiere ich die Daten dafür? Wie Nummeriert man die Schritte? (0.1-Schritte für Patches, 1.0 Schritte für grössere Updates?)

    Das ist im Grunde genommen egal. Donald Knuth hat sich z.B entschlossen TeX nach Pi hin konvergieren zu lassen (aktuelles TeX ist 3.14159, das davor war 3.1415), METAFONT (ein direkter Angehöriger von TeX) konvergiert nach e (e=2.71828182...) usw.

    Es ist jedoch nicht verkehrt, sich beim Nummernschema auch an das Versionsschema zu halten. Wenn Du Christians Empfehlung mit der GNU-Nummeriereung folgst wären das drei Abteilungen, die auch optisch getrennt werden sollten. GNU macht das z.B. mit einem Punkt.

    Hört sich etwas komisch an die frage, ich weiss...

    Nein, keineswegs. Das haben sich schon mehrere gefragt.

    so short

    Christoph Zurnieden

    1. Ok danke =)

      Soweit so gut.

      Letzte frage: Wenn der Patch-Wert über 9 geht zähle ich normal weiter richtig?... klingt logisch...

      Wenn ich nun aber den Minor um eins erhöhe... setze ich dafür den Patch-Counter wieder auf 0?

      ciao

      1. Hi,

        Soweit so gut.

        Letzte frage: Wenn der Patch-Wert über 9 geht zähle ich normal weiter richtig?... klingt logisch...
        Wenn ich nun aber den Minor um eins erhöhe... setze ich dafür den Patch-Counter wieder auf 0?

        Beipiele, gut. Aber soweit hast Du es wohl richtig verstanden, rein sicherheitshalber:

        0.0.0   gibt es normalerweise nicht
        0.0.1   ist so der normale Anfang. gibt zwar eigentlich keine Patch, aber das wird nicht so eng gesehen ;-)
        ...
        0.0.9
        0.0.10
        0.0.11
        ...
        0.0.64  oder 0.0.99 oder 0.0.123, Du weißt, was ich meine?
        0.1.0
        0.1.1
        ...
        0.1.9
        0.1.10
        ...
        0.25.45
        1.0.0
        1.0.1
        ...
        1.0.9
        1.0.10

        usw

        jetzt klar?

        so short

        Christoph Zurnieden

  3. Moin,

    Ich arbeite seit einiger Zeit an einem grösseren Projekt-
    So langsam komme ich mit den daten durcheinander und auch meine Backups sind bisher nur Datums-technisch sortiert.

    Ich würde da gerne eine Versionsnummern-Technik reinbringen. Doch wie macht man das am besten?

    Am Besten benutzt man ein Versionsverwaltungssystem für so etwas. 'Meine Backups sind nur Datums-technisch sortiert' klingt nach Frickelarbeit und ist es bestimmt auch.

    Am besten installierst du dir ein CVS oder (besser) SVN oder ähnliches und überlässt das Versionsnummern hochzählen, Dateihistorie behalten und Datum merken weitgehend dem System. Lediglich wenn du hin und wieder mal ein Release machst brauchst du dann noch ein eigenes Zählsystem, aber dazu haben Christian und Christoph ja schon geschrieben.

    Wenn du Backups machen willst machst du sie am besten gleich vom ganzen Repository und hast damit automatisch auch die Versionshistorie gesichert.

    --
    Henryk Plötz
    Grüße aus Berlin
    ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
    ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~