Moin, bis jetzt liegen unsere Sourcen für ein Paket/Projekt in einem Verzeichnis, alls mit einem Versionierungssystem erfasst. Jedes Verzeichnis hat ein Makefile, mit welchem RPMs erzeugt werden können. Als Version für das RPM wird die Version der Dateien genommen (werden alle gleichzeitig aus- und wieder eingecheckt). Nun haben wir schon länger git für interne Geschichten im Einsatz. Ich möchte das aber auch für RPMs verwenden. Es muss auf irgendeinem Weg ein RPM zum Testen (also "beta") als auch zum ausliefern (wenn Source soweit OK) ein Paket erzeugt werden. Makefile schmeiß ich mit ins Git, also kein Problem. Unser Versionierungssystem hatte den Charme, dass es Variablen durch Werte ersetzen konnte. So war in jeder Datei ein Header drin, in dem der Pfad, der Ersteller der Datei, das Datum und die Version erfasst waren. Wie mach ich das mit git am dümmsten? Mein Problem hier: 1. Wie ersetze ich die Variablen im Header? 2. Mit was ersetze ich die bzw. was nehme ich als Version? Der Commit-Tag ist ja etwas unhandlich 3. Wie erzeuge ich RPMs, sowohl beta als auch Auslieferversionen? Hat hier vielleicht irgendjemand so eine Konstellation am laufen? Wahrscheinlich wirkt das alles etwas wirr.... Gruß Daniel -- Daniel Spannbauer Systemadministration marco Systemanalyse und Entwicklung GmbH Tel +49 8333 9233-27 Fax -11 Rechbergstr. 4-6, D 87727 Babenhausen Mobil +49 171 4033220 https://www.marco.de Email ds@marco.de Geschäftsführer Martin Reuter, Torsten Lukas HRB 171775 Amtsgericht München
Hallo Daniel, ich habe mich Ende letzten Jahres mit der Migration von SVN zu GIT beschäftigt. Dabei tauchte genau die Frage nach der Keyword-Ersetzung auf, die es so in GIT nicht "out of the box" gibt. Du kannst aber eine Keywordersetzung selber schreiben. Diese Ersetzung findet jedoch nur auf dem Client statt, der auschecked. Beim Einchecken müssen die Keywords (auf dem Client) auch wieder bereinigt werden. Hier findest Du einige Grundlagen dazu: https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes Du solltest insbesondere den Abschnitt "Keyword Expansion" lesen und verstehen. Viele Grüße Mark Am 16.01.23 um 13:17 schrieb Daniel Spannbauer:
Moin,
bis jetzt liegen unsere Sourcen für ein Paket/Projekt in einem Verzeichnis, alls mit einem Versionierungssystem erfasst. Jedes Verzeichnis hat ein Makefile, mit welchem RPMs erzeugt werden können. Als Version für das RPM wird die Version der Dateien genommen (werden alle gleichzeitig aus- und wieder eingecheckt).
Nun haben wir schon länger git für interne Geschichten im Einsatz. Ich möchte das aber auch für RPMs verwenden.
Es muss auf irgendeinem Weg ein RPM zum Testen (also "beta") als auch zum ausliefern (wenn Source soweit OK) ein Paket erzeugt werden.
Makefile schmeiß ich mit ins Git, also kein Problem.
Unser Versionierungssystem hatte den Charme, dass es Variablen durch Werte ersetzen konnte. So war in jeder Datei ein Header drin, in dem der Pfad, der Ersteller der Datei, das Datum und die Version erfasst waren.
Wie mach ich das mit git am dümmsten?
Mein Problem hier:
1. Wie ersetze ich die Variablen im Header?
2. Mit was ersetze ich die bzw. was nehme ich als Version? Der Commit-Tag ist ja etwas unhandlich
3. Wie erzeuge ich RPMs, sowohl beta als auch Auslieferversionen?
Hat hier vielleicht irgendjemand so eine Konstellation am laufen?
Wahrscheinlich wirkt das alles etwas wirr....
Gruß
Daniel
participants (2)
-
Daniel Spannbauer
-
Mark Wenzel