Versionsnummer automatisch oder händisch hochzählen

juppidu

Banned
Registriert
Sep. 2020
Beiträge
13
Nabend zusammen,

wie macht ihr das bei eigenen Programmen mit der Version? Meine damit nicht, mit dem hochzählen, sondern ob ihr dies händisch setzt oder automatisch auslesen lasst?

Nutze Visual Studio und würde dies gern automatisch erledigen lassen, immer wenn ich einen Release gemacht habe.
 
Nur du weißt doch welche Komponente der Versionsnummer erhöht werden muss, je nachdem ob es sich um ein Bugfix-Release, Feature-Release oder ein Major-Release (ggf. mit BC Break) handelt.

Siehe https://semver.org/, das hat sich durchgesetzt und das machen heute fast alle.

Wenn du keine sinnvollen Versionen/Branches pflegst kannst du natürlich auch einfach Revisionsnummern oder das aktuelle Datum nehmen, die könnten dann auch automatisch aus dem CI oder Versionierungssystem fallen.
 
  • Gefällt mir
Reaktionen: BeBur
Ok dann hab ich das so richtig verstanden. Könnt ihr mir einen guten Weg nennen, wie ich da am besten vorgehe?

Würde eine Variable nutzen, wo die Nummer gespeichert ist und diese jedes Mal ändern, wenn was passiert ist.
 
Dasmit der Variabel geht - macht wohl auch dann Sinn wenn die Version Nummer an mehreren Orten ausgegeben wird. Da ich hauptsächliche Software für interne Bereiche entwickle haben die gar keine Versions-nummern sondern nur automatisierte Build-Nummern.
 
Google Visual Studio Build Number

Wir handhaben das so. Alles was nicht per Hand geändert wird wird als bugfix betrachtet und automatisch hochgezählt.
Features oder Major per Hand
 
blackbirdone schrieb:
Wir handhaben das so. Alles was nicht per Hand geändert wird wird als bugfix betrachtet und automatisch hochgezählt.
Features oder Major per Hand

Und das Handhabt ihr über eine globale Variable ?
 
Wohl eher über eine Konstante ^^
Warum ist es dir so wichtig ob es nun eine Variable oder direkt reingecodet ist. Wenn sie nur an einem Ort erscheinen soll, kannst du Sie einfach reincoden und dann jeweils ändern. Wenn du sie mehrmals brauchst - hau sie in eine Konstante und nutze Sie dort wo du Sie brauchst?
 
Würde mich über ein paar Anregungen freuen wie ich es am besten mache?
Würde eine mir in der Main eine Methode schreiben, welche mir die Versionsnummer angibt.
 
@Highspeed Opi
Genau richtig erkannt. Browser sind so umfangreich und erfahren unter der Haube so viele Änderungen, dass es quasi mit jedem neuen Release irgendwelche BC breaks oder entfernte Funktionen gibt. Das ist leider eine Schwäche von SemVer wenn man es korrekt anwendet - man MUSS für jeden noch so kleinen BC break die Major Version erhöhen.
 
@Marco01_809
Und wie erklärt sich diese Nummer hier?
Wiederspricht doch: <version core> ::= <major> "." <minor> "." <patch>

123.PNG
 
Bei Chrome ist noch ein Build mit in der Version.
Chromium version numbers consist of 4 parts: MAJOR.MINOR.BUILD.PATCH.

MAJOR and MINOR may get updated with any significant Google Chrome release (Beta or Stable update). MAJOR must get updated for any backwards incompatible user data change (since this data survives updates).
BUILD must get updated whenever a release candidate is built from the current trunk (at least weekly for Dev channel release candidates). The BUILD number is an ever-increasing number representing a point in time of the Chromium trunk.
PATCH must get updated whenever a release candidate is built from the BUILD branch.
https://www.chromium.org/developers/version-numbers
 
Highspeed Opi schrieb:
Ach deshalb haben einige Browser von Version 1-10 viele Jahre gebraucht und von Version 10-80 nur noch ein Bruchteil der Zeit?
Und deswegen stand in der Antwort 'fast alle' und nicht 'alle'. Srsly, daß in einem umkämpften Thema wie den Browsern die Versionsnummer auch dem Marketing unterliegt sollte Dir ja nicht unbekannt sein. ;)
 
@Mextli
Dass es mir nicht unbekannt ist, habe ich mit dem ersten Beitrag - wohl nicht offensichtlich genug - angedeutet.
Das war eine Anspielung auf den "Krieg" der Versionsnummern zwischen Firefox und Chrome, wo jede Seite wie bekloppt für fast jede neue Zahl eine News erstellt und damit kostenlos Werbung gemacht hat. Auch ComputerBase hat dazu gehört.

Das war unter anderem eines der Gründe, warum Chrome so schnell gewachsen ist.
Abgesehen von der Tatsache, dass Google auf ihren (Parnter-)Seiten andere Browser ausgebremst haben, in deren Seiten mit dem Chrome Browser bei jedem Besuch vollgespammt haben und es so darstellten, als würde man den Chrome für die fehlerlose Anzeige benötigen.
Eben alles was vom Kartellamt hätte gestoppt werden müssen.
Stattdessen haben die sich um Microsofts sterbenden Browser gekümmert und damit zusätzlich Google zum Erfolg verholfen.
Kein Wunder wenn dort nur Dinosaurier arbeiten...
 
  • Gefällt mir
Reaktionen: Marco01_809
juppidu schrieb:
Würde mich über ein paar Anregungen freuen wie ich es am besten mache?
Würde eine mir in der Main eine Methode schreiben, welche mir die Versionsnummer angibt.
Dir ist schon klar, dass du die Versionsnummer selber bestimmst oder?

Wenn eine Versionsnummer schon so eine Hürde darstellt, hast du eventuell ganz andere Probleme bei deiner Anwendung...
 

Ähnliche Themen

Zurück
Oben