Forum: FPGA, VHDL & Co. Xilinx Projekte mit Subversion versionieren?


von Andreas N. (poolspieler)


Lesenswert?

Hallo,
ich bin dabei, ein etwas umfangreicheres Projekt mit den Xilinx-Tools 
EDK SDK und WebISE zu erstellen.
Mein Projektordner hat nun eine Größe von knapp 100MB erreicht.
Ich will/muss mein Projekt mit Subversion versionieren. Dabei will ich 
natürlich nicht die ganzen temporären Dateien in das Archiv übernehmen.

Kann mir jemand sagen, welche Dateien übernommen werden müssen - und 
welche nicht?
Oder bleibt mir nichts anderes übrig, nur die VHDL-Dateien + UCF-File zu 
Versionieren und das Xilinxprojekt "von Hand" zu erstellen?
Dann ist aber die Frage, was mit der MicroBlaze-Konfiguration ist...??? 
Wie kann ich die versionieren?

Wie macht Ihr das?

Gruß,
Andreas

von Duke Scarring (Gast)


Lesenswert?

Wir erzeugen das ISE-Projekt per tcl-script. Versioniert werden vhdl und 
die build-Skripte.
Beim Microblaze lassen sich die EDK-Projekte besser als die SDK-Projekte 
versionieren. SDK fasst beim Öffnen alle Dateien an, so daß sie wie 
geändert aussehen.

100MB? Ist ja niedlich :-)
1
~/projects$ du -hs
2
2.5G    .

Duke

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Mein Projektordner hat nun eine Größe von knapp 100MB erreicht.
Auf eine handeslübliche Platte mit 500GB passen also etwa 4999 
Sub-Versionen, das sollte doch reichen...

Ich machs so:
"Cleanup Project Files" und danach STRG-C-V

@ Duke Scarring
> ~/projects$ du -hs
project + s
das ist offenbar die Summe über die Projekte ;-)

von Andreas N. (poolspieler)


Lesenswert?

Hallo,
die 100MB beziehen sich natürlich auf das eine (kleine) Projekt, mit dem 
ich gerade angefangen habe... Es werden natürlich bald mehrere (und vor 
allem größere) werden...

Die Rechnung mit den 4999 Sub-Versionen stimmt nicht ganz.
Das Archiv liegt auf unserem Linux-Server. Es wird jede Nacht einmal 
gesichtert. Das heißt, das bei (nur) 100MB pro Monat schon 30GB 
Sicherungen für eine Sub-Version zusammen kommen. In dem Archv sind aber 
noch viele andere Projekte vorhanden.
OK, über diese Backupstrategie kann man jetzt streiten - aber die ist 
halt so...

@Lothar:
Der Hinweis mit "Cleanup Project Files" ist einerseits gut.
Andererseits wird es aber wegen den .svn Ordnern nicht ganz klappen - 
oder?
Und danach müßte man wieder generate Netlist und generate Bitstream 
laufen lassen...?

> SDK fasst beim Öffnen alle Dateien an, so daß sie wie
geändert aussehen.
Das ist wirklich blöd. Schade, dass Xilinx nicht eine direkte 
Schnittstelle zu Subversion oder PRCS oder so anbietet... Vielleicht 
kommt das ja noch irgendwann.
Wobei das SDK doch auf Eclipse basiert. Ich glaube, dass es bei Eclipse 
schon solche SVN-Module gibt - ob mir das jetzt hier weiter hilft, weiß 
ich aber auch nicht...???


Gruß,
Andreas

von Toto (Gast)


Lesenswert?

Was für Dateien befinden sich denn in euren 100 mb bzw. 2 gb großen 
Projektordnern? Wieviel Prozent fallen denn da auf (selbst geschriebene) 
VHDL-Dateien? neugierig

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Das ist alles Ballast der von der ISE erzeugt wird, der Anteil reiner 
VHDL-Code dürfte in der Größenordnung < 1% sein.

von Andreas N. (poolspieler)


Lesenswert?

So genau kann man es nicht sagen.
Der wirklich selbst geschriebene Text (also C-Code, VHDL-Code, UCF-File) 
sind ca. 200kB.
Bei der Konfiguration des MicroBlaze z.B. kann ich es nicht sagen:
Der wird ja über die GUI zusammen geschoben und dann synthetisiert. Was 
da nun versioniert werden müßte, steht mehr oder minder in den Sternen. 
Und wenn man dann nur das Projekt öffnet ohne irgendwas zu ändern, dann 
wird Subversion wohl sehr viele temporäre Dateien als "geändert" 
darstellen... Genau das ist mein Problem (abgesehen von der relativ 
hohen Datenmenge)

Gruß,
Andreas

von Duke Scarring (Gast)


Lesenswert?

@Lothar Miller:
project + s stimmt zwar, aber ich habe momentan nur ein Projekt darin 
ausgecheckt. Zugegebenermaßen unser Größtes.

@Toto:
1
~/projects$ find -name *.vhd | wc -l
2
1027
3
4
~/projects$ find -name *.vhd -exec cp {} ~/vhd \;
5
~/vhd$ du -hs
6
80M    .

Der Rest sind Referenzdaten, Dokumentation, C-Code, etc.
Aber: Keine von ISE erzeugten Dateien. Die landen in einem Extra-Ordner.

Duke

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Zugegebenermaßen unser Größtes.
Gut, hört sich plausibel an  ;-)

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.