Forum: PC Hard- und Software SCM, Versionierung und Build-Nummer


von Lockenentwickler (Gast)


Lesenswert?

Hier läuft es so: Code ändern, Kompilieren, Testen, etc. etc.
Versionsnummern werden manuell vergeben, teils ändern sich Module, die 
dann auch wieder eine neue Version bekommen, da sonst andere Programme 
nicht damit klarkommen (eine Basishardware, einige Varianten).
Das Ziel ist natürlich, dass alle Programme die beste Version eines 
Moduls nutzen, aber vorher schleppt man viel redundanten Code mit sich 
herum und Verbesserungen müssten manuell an vielen Stellen eingepflegt 
werden.
Ein anderes Problem ist dringender:

Diese Konstellation der Quelltexte anhand der Versionsnummer des 
Programmes nachzuvollziehen ist schwierig, noch schwieriger, wenn die 
Nummer nicht verändert wurde.

Um das ganze zumindest nachvollziehbar zu machen, wird jetzt ein SCM 
(SVN, GIT etc) eingeführt, und die Versionsnummernvergabe soll 
automatisiert werden.

Die Frage ist nun, welchen Workflow man durchsetzt, der menschliches 
Versagen (z.B. ständiges 'committen') minimiert, aber andererseits nicht 
zu mehr Unübersichtlichkeit führt.

Wenn man im obigen Zyklus jedesmal vor dem Kompilieren eine (Build-) 
Nummer hochzählt, einen commit in die Versionsverwaltung macht, dann 
Kompiliert, Testet - das kostet Zeit und Platz und macht es nicht 
übersichtlicher.

Wer kennt da einen guten Ansatz?

: Verschoben durch User
von Rolf Magnus (Gast)


Lesenswert?

Was sollte es bringen, beim Compilieren einen Commit zu machen? Du mußt 
ja erstmal testen, ob deine Änderung auch funktioniert. Wozu sollte man 
Code, der quasi in unbekanntem Zustand ist, im Repository haben wollen?
Ich denke nicht, daß es sinnvoll möglich ist, die Commits zu 
automatisieren.

von Lockenentwickler (Gast)


Lesenswert?

Ja, da das ist tatsächlich unsinnig.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Lockenentwickler schrieb:
> Die Frage ist nun, welchen Workflow man durchsetzt, der menschliches
> Versagen minimiert

http://de.wikipedia.org/wiki/Kontinuierliche_Integration

Lockenentwickler schrieb:
> die Versionsnummernvergabe soll
> automatisiert werden.

Die "Versionsnummer" wird eh von der Versionsverwaltung erzeugt. Wenn es 
nur im Source steht würd ich garnix machen falls die Versionsnummer 
irgendwo im Programm angezeigt werden soll kann man bei SVN z.B. einfach 
automatisch die Revisionsnummer einfügen lassen.

von Christian R. (supachris)


Lesenswert?

Wir nutzen hier sehr erfolgreich TeamCity. Da gibts keinen Stress mit 
Versionsnummern. Mittlerweile baut TeamCity auch unsere FPGA Firmware 
mit den Xilinx Tools.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.