Jupp, genau so machen wir es auch. Der Buildcount an vierter Stelle wird nur benötigt, um unterschiedliche Testdurchläufe unterscheiden zu können, und wird mit jeder Änderung an den ersten drei Stellen auf 0 zurück gesetzt.
Ich hatte das mal versucht von Anfang an unterbrechungsfrei fortlaufend hochzuzählen, um zur Versionsnummer eine quantitative Zählung mitzunehmen.
So wie die Revision bei den Delphi/
RAD-Versionen.
D7 7.0.8.1 / 7.0 (Build 4453) => Major.Minor Build (Dateiversion / Programmversion)
XE 15.0.3953.35171 => Major.Minor.Revision.Build
XE2 16.0.4429.46931
XE3 17.0.4625.53395
XE3 17.0.4770.56661 (Update 2)
XE4 18.0.4905.60485
XE5 19.0.13856.4978 => Major.Minor.xxx.Revision ???
k.A. wo z.B. die Delphi-Updates ersichtlich sind, außer in "Installierte Aktualisierungen" und in Revision/Build
Dank einer fortlaufenden Revision/Build hätte man für die Versionsnummern von einzelnen Modulen/Versionszweigen noch die Info, wievielte Version das wirklich ist
und kann so das Major+Minor in gemeinsammen Schritten über das gesamte Projekt zählen, jenachdem wann das jeweilige Modul zuletzt aktualisiert wurde.