Ich habe ein Projekt gegabelt und viel davon geändert. Diese Gabelung ist hier nicht nur eine kleine Funktionsänderung und dort eine vergrabene Fehlerbehebung, sondern eine ziemlich wesentliche Änderung. Nur der größte Teil des Kerncodes wird gemeinsam genutzt.
Ich habe dieses Projekt in Version 2.5.0 gegabelt. Für eine Weile habe ich angefangen, meine Gabel bei v3.0 zu versionieren. Ich bin mir jedoch nicht sicher, ob dies der richtige Weg ist, vor allem, weil die Dinge verwirrend werden, wenn dieses Projekt auf Version 3.0 kommt. Aber ich möchte nicht bei v1.0 oder v0.1 neu anfangen, da dies die Kindheit, Instabilität und Nicht-Rücksichtnahme eines Projekts impliziert. Dies ist nicht wahr, da der größte Teil des Kerncodes sehr verfeinert und stabil ist.
Ich weiß wirklich nicht, was ich tun soll, also frage ich hier: Wie gehe ich normalerweise mit solchen Situationen um? Beginnen die meisten Gabeln von vorne, erhöhen die Versionsnummern oder tun Sie etwas anderes, das mir nicht bekannt ist.
quelle
Antworten:
Die meisten Gabeln, die ich gesehen habe, starten wieder ab Version 1.0. Aber ich gehe davon aus, dass Sie auch den Namen Ihrer Gabel geändert haben, daher bin ich mir nicht sicher, warum es Verwirrung geben würde, wenn Sie einfach mit Version 3.0 beginnen würden.
Ich würde den Namen des Projekts ändern, Version 1.0 veröffentlichen und klarstellen, dass das Projekt ein Zweig eines anderen Projekts ist. Ich glaube nicht, dass es bei diesem Ansatz Verwirrung geben wird.
Wenn Sie sich wirklich Sorgen um das Label "1.0" machen, veröffentlichen Sie einfach Version 2.0 kurz nach 1.0 ...
quelle
Haben Sie Ihre eigene Roadmap und halten Sie sich daran, beginnend mit der Nummer der Originalversion, aber versuchen Sie nicht, mit der aktuellen Version des Originalprodukts zu fahren.
quelle
Vielleicht möchten Sie überlegen, ob (und wie viel) Ihr Projekt mit dem ursprünglichen Projekt in Beziehung steht. Wenn Sie vorhaben, neue Funktionen aus dem Originalprojekt in Ihr Projekt zu portieren, sollten Sie in Betracht ziehen, Ihre Versionsnummern mit den Versionen des Originals übereinzustimmen.
Schauen Sie sich als Beispiel MariaDB an, eine Abzweigung von MySQL. Sie möchten, dass es ein "Drop-In" -Ersatz für MySQL bleibt, sodass MariaDB 5.2 beispielsweise alle Funktionen von MySQL 5.2 bietet.
Siehe: http://kb.askmonty.org/v/mariadb-versus-mysql
Hinweis: Seit diese Antwort veröffentlicht wurde, weicht MariaDB erheblich von MySQL ab und folgt nun einem eigenen Versionsschema.
quelle
0,1 kann auf eine Kindheit hinweisen, aber Version 1.0+ bedeutet stabil. Eine Zunahme der Hauptversionsnummern, z. B. 2.0, 3.0, deutete im Allgemeinen auf eine große Funktionsänderung hin.
Z.B
Was ich damit sagen will , ist, dass Hauptversionsnummern nicht die Reife anzeigen, sondern wichtige Funktionssätze. Das war eine Art Tangente an die Versionsnummer Ihres Produkts.
Was ich zuvor gesehen habe, was mir sehr gut gefallen hat, war, die Versionierung ab 1.0 erneut zu starten (oder ab 3.0, wenn Sie es wirklich bevorzugen) und dann in Klammern anzugeben, aus welcher Version des Originals zuletzt Funktionen gezogen wurden.
quelle
Wenn möglich, führen Sie Ihre Gabel wieder zum ursprünglichen Projekt zusammen. Ich kann das nicht genug betonen.
Wenn Sie Ihre Versionsnummern erneut eingeben, verwenden Sie die von Ihnen gegabelte sowie ein Datumssuffix.
quelle