mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Versionskontrolle & IDE für avr-gcc?


Autor: Detlev T. (detlevt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

meine Projekte werden allmählich größer.  Bislang habe ich AVR Studio 
bzw. KDevelop verwendet und Zwischenstände "manuell" gesichert Aber ich 
komme jetzt merklich an die Grenze, wo ich die Übersicht zu verlieren 
drohe.

Ich habe mich nach anderen Tools umgesehen. Häufig wird Eclipse als IDE 
und cvs als Versionsverwaltung genannt. Mich gruselt aber ein wenig vor 
diesen allumfassenden Riesen. Die Projekte sind noch nicht so groß, dass 
da mehrere dran arbeiten würden. So etwas wie ein Internet-basiertes 
Repository wie cvs bräuchte es also nicht unbedingt, etwas "lokales" 
würde schon reichen. Veröffentlichen will ich ohnehin am Ende nur 
zip-Dateien mit dem Sourcecode.

Was die IDE betrifft, habe ich mir kurz Anjuta angesehen. cvs wird da 
wohl recht gut unterstützt und verliert damit ein wenig von seinem 
Schrecken. Aber da gibt es wohl keine Unterstützung speziell für avr-gcc 
mit seinen "Besonderheiten". Bei Eclipse schaffe ich es nicht, mir einen 
Überblick zu verschaffen, welche Plug-Ins ich da bräuchte.

Könnt ihr mir da helfen? Was nutzt ihr für größere Programme, sagen wir 
bis 64kiB Codegröße?

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den kleinen Bruder von Eclipse, Code::Blocks ;)

Und mit lokalen Repositories wäre z.B. GIT interessant. Damit kann man 
dann notfalls später auchmal einen kompletten Linux-Kernel verwalten ;)

Autor: z.b. so (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
make bak ;-)

habe ich oft für uni-projekte verwendet, für die mir ein cvs/svn zu groß 
war.
die einfachste version habe ich mal angehängt. das ganze könnte man 
sicher noch besser machen/schreiben - aber solange das skript genau das 
macht was es soll ändere ich auch selten was daran...

Makefile:
bak: clean
  $(shell ./makebak.sh)

makebak.sh:
#!/bin/bash

DATE=$(date +%d%m%y-%H%M)
DIR=$(basename `pwd`)

cd ..
tar -czf $DIR-$DATE.tar.gz $DIR

Autor: z.b. so (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Detlev T. schrieb:
> So etwas wie ein Internet-basiertes
> Repository wie cvs bräuchte es also nicht unbedingt, etwas "lokales"
> würde schon reichen.

cvs/svn kann man sich auch lokal installieren - das muss nicht unbedingt 
zwischennetz-basiert sein...

Autor: Detlev T. (detlevt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
z.b. so schrieb:
> cvs/svn kann man sich auch lokal installieren - das muss nicht unbedingt
> zwischennetz-basiert sein...

Wenn mich schon graust, ein Paket zu nutzen, will ich das nicht auch 
noch installieren und konfigurieren müssen.

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
svn ist doch nicht schlimm.
Aber durchaus hilfreich, leistungsfähig und zuverlässig.

Davor hatte ich mir mit einem Skript jeweils den aktuellen
Stand von Verzeichnissen mehr oder weniger regelmässig
in eine .zip oder .tar.gz gepackt, aber das ufert mengenmäßig
irgendwann aus.

cvs würde ich nicht empfehlen; es ist älter, kann etwas weniger
und nichts mehr als svn.

Autor: marvin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Detlev T. schrieb:
> z.b. so schrieb:
>> cvs/svn kann man sich auch lokal installieren - das muss nicht unbedingt
>> zwischennetz-basiert sein...
>
> Wenn mich schon graust, ein Paket zu nutzen, will ich das nicht auch
> noch installieren und konfigurieren müssen.

Musst du ja auch garnicht. Ich bin mittlerweile auch git-freund, damit 
ginge es mit:

 ~/projekte/blah$ git init

und fertig. Mit svn waere es aber jetzt auch nicht so viel mehr arbeit 
(Das ist jetzt nur aus dem Kopf, man moege mir Fehler verzeihen):

 /var/svn$ svnadmin create blah
 ~/projekte$ svn co file:///var/svn/blah

Gruesse

Marvin

Autor: Detlev T. (detlevt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zwischenstand

also das mit Code::Blocks war ein prima Tipp :ThumbUp:. Das Programm 
werde ich jetzt nutzen.

Ich meinte übrigens auch svn und nicht csv. (Einem Laien möge man diese 
"Legasthenie" verzeihen. ;-) ) Braucht svn nicht aber in jedem Fall 
einen Server (Apache) um arbeiten zu können?

GIT werde ich jetzt einmal testen. Dieses Versionsdingsbums ist zwar 
aufwändiger, als ich eigentlich dachte, weil man die Änderungen immer 
noch zusätzlich dokumentieren muss. Aber es ist vielleicht nicht 
schlecht, wenn der innere Schweinehund dazu gezwungen wird.

Vielen Dank für eure Hilfe und Tipps.

Gruß, DetlevT

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
svn braucht keinen Indianer.

Zumindest bei mir unter Debian nicht.

Autor: tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
svn kannst Du lokal (oder auf einem Netzwerk-LW) als versionsverwaltung 
nutzen, ohne den svn-server installieren zu müssen.
Einfach tortoise als client installieren, repository erzeugen und gut 
ist. ein wenig doku zwecks verständnis (versionsverwaltung versus 
versionskontrolle) und angst-abbau vorher lesen hilft auch.
macht auf jeden fall sinn.
git als versionsverwaltung ist auch ok.

gruss, tom.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich Eclipse und das Subversive SVN Plugin bereits für meine PHP 
Projekte genutzt habe, war es naheliegend, es auch für die AVR-C 
Projekte zu nutzen. Ein Mal eingerichtet bin ich wirklich sehr zufrieden 
damit. Alles aus einer IDE heraus... sehr komfortabel.
Das SVN-Repository habe ich hierbei lokal in einem Verzeichnis liegen. 
Die SVN-Verwaltungstools greifen dann direkt auf die Dateien zu, da 
brauchst keinen Apache oder sonstwas.

Habe auch länger überlegt, ob ich CVS, SVN oder GIT nutzen soll. Habe 
mich schlussendlich für SVN entschieden, da hier die Versionskontrolle 
beim Umbenennen und Verschieben von Dateien am besten war (glaub 
zumindest, dass das der Grund war)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.