Was ist die Struktur hinter Apple Versionsnummern / Build-Nummern?

12

macOS Sierra 10.12.3 ist 16D32, aber das SDK entspricht 16C58meinem Xcode.

iOS 10.3 Beta ist 14E5239e.

Xcode 8.2 ist 8C38.

Sie wissen, wie sie aussehen, und sie werden von allen Apple-Programmen gemeinsam genutzt.

Aber wie setzen sie sich zusammen? Was ist die Logik dahinter? Ich kann kaum erraten, dass "manchmal" die erste Zahl die "Haupt" -Version ist, z. für Xcode, aber das stimmt nicht immer, zB. für iOS.

Und worum geht es im mittleren Buchstaben?

Die letzte Nummer ist sicherlich eine fortlaufende Build-Nummer, an die kleinere Revisionen mit Kleinbuchstaben angehängt sind (iOS 10.3 Beta).

Fangen sie alle 1A1intern an und gehen dann Build für Build weiter?

Was ist hier das größere Schema?

Cyrille
quelle
1
Um ehrlich zu sein, habe ich diesbezüglich gefragt, ob ich "ihr" Versionsschema in unserer eigenen Software- und CI-Umgebung replizieren könnte. Es ist nicht aus reiner Neugier. Schließen Sie, wenn Sie so wollen, ich verstehe.
Cyrille
1
@fsb Ich ermutige Sie, die Antworten zu lesen, warum diese Frage nicht vom Thema abweicht.
grg
@grgarside Ich bin anderer Meinung und denke immer noch, dass es nicht zum Thema gehört. Ich habe jedoch meine Kommentare entfernt und die Abstimmung abgeschlossen.
fsb
Mein Gebrauch des Begriffs "Begründung" war vielleicht auch etwas verwirrend. Zwanzig Jahre Englisch üben und ich bin immer noch manchmal auf Worte verloren :)
Cyrille

Antworten:

11

Paul Suh (ehemals beratender Ingenieur und Schulungsentwickler bei Apple) schrieb Folgendes (veröffentlicht auf Joe Morenos Blog):

Beispielsweise ist Mac OS X 10.4.10 Intel Build 8R2232. Mac OS X Server 10.4.11 Universal ist 8S2169. Diese Zahlen haben die folgenden ungefähren Bedeutungen:

8 - Dies ist die Hauptversionsnummer des Softwarepakets. 10.5 = 9, 10.4 = 8, ... 10.0 = 4. Davor war NextStep 3.3, von dem wir die 3er-Reihe erhalten.

R - Dies ist die Nebenversionsnummer. Es wird bei Systemaktualisierungen immer inkrementiert (dh 10.4.10 bis 10.4.11 ist immer ein Buchstabensprung), kann jedoch auch bei hardwarespezifischen Builds inkrementiert werden. R ist der 18. Buchstabe, aber nur das 10. Update für Tiger. Die anderen 8 Buchstaben waren für die Hardwareunterstützung für neue Versionen gedacht. Sicherheitsupdates verdienen im Allgemeinen keinen Buchstaben.

2232 - Dies ist die fortlaufende Build-Nummer in der Nebenversion. Wenn es sich um eine vierstellige Zahl handelt, gibt die erste Ziffer eine bestimmte Plattform an. In diesem Fall gibt 2 an, dass es sich um Intel handelt. Eine dreistellige oder kürzere Zahl gibt einen einheitlichen Build für alle Architekturen an. Die restlichen Ziffern sind die fortlaufende Build-Nummer. In diesem Fall hatte der R-Zug vor der Veröffentlichung 232 Builds, der erste war Build 8R2001. Obwohl die Builds ungefähr täglich sind, kann man sich nicht wirklich an diese Zahl halten. In der Anfangsphase dürfen Builds nur alle zwei oder drei Tage durchgeführt werden. Gegen Ende können sie zwei- oder dreimal am Tag auftreten. Die Build-Serien aufeinanderfolgender Releases können sich bis zu einem gewissen Grad überschneiden. Dies hängt davon ab, was Apple Engineering als Priorität gegenüber dem Risiko verschiedener Änderungen am Code ansieht. Die frühesten Builds von 10.4. 11 hat sich mit ziemlicher Sicherheit mit den letzten Builds vom 10.4.10 überschnitten. Die Builds von Leopard überlappten sich definitiv mit Builds von Tiger-Updates und reichten fast bis zum Tag nach der Veröffentlichung von Tiger zurück.

Beachten Sie, dass verschiedene Software-Pakete völlig unterschiedliche Build-Nummern haben, sodass Sie die Build-Nummern nicht auf sinnvolle Weise miteinander vergleichen können. Die Ausnahme ist, dass Mac OS X und Mac OS X Server dieselben Build-Nummern verwenden.

Alan Shutko
quelle
1

In einem Artikel verweist MacRumors auf das Build-Nummern-Schema von Apple . Obwohl es sich nicht um eine offizielle Ressource handelt, weist dies darauf hin, dass sich hinter der Nummerierung eine bestimmte Logik befindet.

Gemäß Apples Build-Nummernschema bezieht sich "13" auf OS X 10.9, "A" auf die Version 10.9.0 und "451" ist Teil einer fortlaufenden Nummerierung kompilierter Builds.

Volsk
quelle