Forum: PC Hard- und Software SVN-Revision in Eagle als Global Attribute


von Rainer M. (excogitator)


Lesenswert?

Hallo zusammen,

ich verwalte meine Eagle-Dateien mit Subversion und würde gerne die 
aktuelle Revision im Schaltplan/Layout angezeigt bekommen.
Im Internet habe ich folgende Anleitung gefunden:
https://www.element14.com/community/thread/24844/l/howto-get-clean-subversion-revision-info-into-global-eagle-properties?displayFullThread=true

Das Ganze Funktioniert zwar, aber nur genau einmal direkt beim 
Einrichten.
Wenn ich weitere Commits mache wird die Revision Nummer von SVN nicht 
mehr in den Eagle-Dateien angepasst.
Hat jemand eine Idee, woran das liegen könnte? Muss ich im SVN noch 
zusätzlich etwas einstellen oder aktivieren?
Zur Info noch: Ich verwende hier Eagle 6.4.0 für Schaltplan/Layout und 
TortoiseSVN 1.9.6 als SVN-Client.

Gruß
Rainer

von Jim M. (turboj)


Lesenswert?

Mach mal ein "SVN update".

von Rainer M. (excogitator)


Lesenswert?

Jim M. schrieb:
> Mach mal ein "SVN update".

Bringt leider nichts. Bekomme nur die Meldung, dass die Dateien bereits 
aktuell sind.

von Christian R. (supachris)


Lesenswert?

War da nicht was mit dem "SubWCRev" Programm? Das ersetzt doch dann die 
Variablen.

von Rainer M. (excogitator)


Lesenswert?

Christian R. schrieb:
> War da nicht was mit dem "SubWCRev" Programm? Das ersetzt doch dann die
> Variablen.

SubWCRev kannte ich bisher noch nicht. Allerdings verstehe ich nicht wie 
mir das hier helfen soll.
Wenn ich SubWCRev nach einem Commit laufen lasse, ersetzt es mir zwar 
ein mögliches Keyword ($WCREV$) mit der Revision, allerdings verändere 
ich damit die lokale Kopie der Datei und bekomme das entsprechend von 
Tortoise markiert. Ausserdem muss ich dann von Hand vor dem nächsten 
Commit wieder das Keyword $WCREV$ in das Eagle Attribut eintragen. Oder 
habe ich das falsch verstanden?


Gruß
Rainer

von Christian R. (supachris)


Lesenswert?

Ich hab das auch nicht mehr so ganz im Kopf, aber das ist dann 
vielleicht doch nicht so ganz das was du brauchst. Kenne den Mechanismus 
bei Eagle jetzt nicht.
Eventuell hast du nur die auto-properties nicht aktiviert für die Datei? 
Standardmäßig sind die nur für "normale" Quellcode Dateien aktiv...geh 
mal im TortoiseSVN auf properties und dann kannst du das svn:keywords 
proporty setzen/einstellen.

von Rainer M. (excogitator)


Lesenswert?

Das aktivieren der auto-properties hat leider auch nicht geholfen. 
Soweit ich das verstanden habe geht es hierbei eher um das vererben von 
Eigenschaften.

von Rainer M. (excogitator)


Lesenswert?

Inzwischen habe ich mir die Sache noch etwas näher angesehen und ich 
glaube ich kenne jetzt das Problem - allerdings habe ich noch keine 
Lösung dafür.

Anfangs hatte ich ja geschrieben, das es beim aller ersten mal, nachdem 
man das Keyword gesetzt hat klappt.

Schaut man sich nach dem setzen des Keywords und Commiten die 
Eagle-Dateien an, sieht der Eintrag wie folgt aus:
1
<attribute name="CKW1" value="$ckw1: "/><attribute name="SVN-R" value="6851"/><attribute name="TAIL1" value=" $"/>

Wenn man mit der Datei arbeitet und unter Eagle speichert sieht der 
Abschnitt so aus:
1
<attribute name="CKW1" value="$ckw1: "/>
2
<attribute name="SVN-R" value="6851"/>
3
<attribute name="TAIL1" value=" $"/>

Ich vermute SVN kommt nicht damit klar, dass das Dollarzeichen, welches 
das Ende eines Keyword markiert, erst zwei Zeilen weiter unten kommt. 
Wenn ich die Linefeeds von Hand entferne, setzt SVN beim daraufolgenden 
Commit die Revision Nummer wieder korrekt ein. Ich schätze, ich kann 
Eagle nicht abgewöhnen nach jedem Attribut ein Linefeed einzufügen.

Hat jemand eine Idee, wie ich die Sache lösen könnte?

Gruß
Rainer

von Konrad S. (maybee)


Lesenswert?

Zwei Dinge sind notwendig:
1. Die Datei muss die passende Property bekommen, z.B.
1
svn ps svn:keywords Id
2. In der Datei muss das Keyword mit '$'-Zeichen direkt davor und 
dahinter auftauchen, z.B.
1
/* $Id$ */
Der Commit setzt dann an der Stelle des Keywords den jeweils aktuellen 
Wert ein.

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.