Forum: PC Hard- und Software Versionsverwaltung für Code UND Eagle-Files


von Jan R. (janra)


Lesenswert?

Hallo zusammen,
hier sind ja bestimmt viele, die ordentlich ihren Code verwalten und 
dafür auch ein Versionsverwaltung wie svn, git, cvs, ... benutzen. Und 
das ist auch aus vielen Gründen gut so; viele Diskussionen darüber habe 
ich hier gesehen.

Wenn ich nun zu meinen Codeteilen auch meine BRDs und SCHs und LBRs von 
Eagle in obiger Manier sichern möchte -- die ja durchaus in engem 
Zusammenhang stehen (also Code mit Schaltplan bzw. Layout und 
Bauteilen), dann wird es kniffeliger.

Es klappt ja ganz gut, im BRD und/oder SCH das Feld ">DRAWING_NAME" mit 
dem Eagle-Objekt 'Text' reinzukleben, um dann fortan den mit der 
Versionsnummer oder -datum o.ä. angereicherten Dateinamen im Board oder 
Schaltplan stets aktuell zu haben.

Das widerspricht aber leider komplett dem Gedanken der 
Versionsverwaltung. DIESE soll ja eben das Versionieren machen, nach 
ihren Regeln, nicht der Designer selbst über die Krücke des Dateinamens. 
Und wie oft habe ich mir schon den Stand n-1 versemmelt, weil ich 
schnell eine Änderung gemacht habe, ohne den Dateinamen hochgezählt zu 
haben VOR dem Speichern. Zack war die vorige Version weg weil mit der 
Änderung überschrieben.

Nach der langen Vorrede: wie macht'n ihr das?  Die Eagle-Dateien sind 
zwar binär, also eigentlich nicht so schön für ne Versionskontrolle, 
aber gehen tut das natürlich trotzdem. Wie mit Grafiken ja auch.

Wie bringt ihr harmonisch Eagle-Dateien mit eurem Code in Sync? Mit 
harmonisch meine ich das Fehlen von manuellen Fummeleien wie eben v0.1.2 
im Dateinamen. etc. Und wie habt ihr im Layout und im Schaltplan die 
das aktuelle Release?

Bin gespannt auf eure guten Ideen!

Viele Grüße,
       Jan.

: Verschoben durch User
von huhu (Gast)


Lesenswert?

Da kannste das Tool nehmen:
http://tortoisesvn.net/downloads

SVN Repository

Code kann man mergen (vergleichen) und man sieht sofort was hinzugefügt 
bzw. geändert wurde. Bei Boards bzw. Schematics kann man nur den Stand 
vergleichen bzw. den Entwicklungspfad nachvollziehen und gegebenfalls 
auf eine alte version springen. Da die Daten hier nicht als Text 
vorliegen, kann man leider nur das mit Eagle Files. Reicht aber 
völlig...

von blauzahnmeister (Gast)


Lesenswert?

Hallo Jan.

Einige VCS-Systeme können zumindest in Text-Datein Tags verarbeiten.
z.B.
/*
*versionsnummer : $Rev$
*/

Beim commit werden diese Tags dann jeweils gegen Versionsnummern, author 
etc. ausgetauscht.
Experten verstecken dies Tags in Kommentarzeilen der jeweiligen Dateien.
Ob Du so einen Tag in eine Eagle Datei hereinbekommst ist jedoch 
fraglich.
Mit Tortoise, wie huhu ganz richtig bemerkt, hast Du aber ein 
Hilfsmittel, welches auf File-Browser Ebene das Verwalten von Versionen 
ermöglicht.
Hier beim commit entsprechen Versionsnummern im Kommentar abzulegen 
halte ich für wesentlich sinnvoller, als verschiedene Versionsnummern 
durch den Dateinamen zu verwalten.
Mit Branches stellen Dir die VCS Systeme dann ein Hilfsmittel um älter 
Versionen an einem komplett anderen Ort auf Deiner Platte auszuchecken.

Grüsse

von Sven H. (dsb_sven)


Lesenswert?

Ich könnte mir vorstellen, dass solche Spielereien wie 
Versionsvergleiche mit Eagle Dateien schwer werden. Aber sonst sollte 
man doch jedes svn System nehmen können. Und wenn man die Eagle Dateien 
als Text dort hinterlegt.

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.