Subversion: Unterschied zwischen den Versionen
K (→Beispiel) |
|||
Zeile 13: | Zeile 13: | ||
<pre> | <pre> | ||
$ svn co https:// | $ svn co https://das-labor.org/svn/microcontroller | ||
[... Am Quelltext rumarbeiten ...] | [... Am Quelltext rumarbeiten ...] |
Version vom 20. April 2009, 23:53 Uhr
Subversion ist ein Quellcode (Versions-) Verwaltungs System -- nicht unähnlich CVS. Wenn dir das Konzept von Versionsverwaltungs-Systen unbekannt ist, solltes du dir zunächst den Artikel zu Versionskontrollsystemen bei Wikipedia durchlesen.
Übersicht
- Das Labor betreibt einen Subversion Server unter der URL https://roulette.das-labor.org/svn.
- Um durch den dort gespeicherten Quellcode zu browsen, oder um die letzten commits zu betrachten kannst Du Trac benutzen -- unter der URL https://roulette.das-labor.org/svnview/
- Accounts gibt es auf zuruf oder bei info@das-labor.org. (Nur nötig, wenn du deine eigenen Änderungen integrieren möchtest!)
- Das Handbuch zu subversion gibt es unter http://svnbook.red-bean.com/
Neben dem Subversion Server, der von den meissten Labor Projekten benutzt wird betreiben wir auch noch einen Bazaar Server.
Beispiel
$ svn co https://das-labor.org/svn/microcontroller [... Am Quelltext rumarbeiten ...] $ svn commit -m "README erweitert"
Commit Access
Subversion Schreiboperationen finden ebenfall über die HTTPS und die o.g. URL statt. Alles was ihr braucht ist ein gültiger Subversion account. Die entsprechende Datei ist /var/svn/htpasswd.labor, und man benutzt das Programm htpasswd um neue User anzulegen oder passworte zu ändern:
sudo htpasswd -s /var/svn/htpasswd.labor <username>
Das können natürlich nur lokale Labor Mitglieder, die einen Account auf roulette haben. Alle anderen melden sich mal bitte via mail an info@das-labor.org .
SVN-Struktur
Die Struktur des SVNs ist über Jahre gewachsen und einfach schwer nachzuvollziehen für Leute, die damit nicht vertraut sind. So lässt sich z.B. die Firmware für die Borgs nur bauen, wenn man das komplette Verzeichnis "microcontroller" auschecked, weil Borg-Projekte zahlreiche andere Dinge benötigen, die quer verstreut im SVN liegen.
Ein weiteres Problem der aktuellen Struktur stellt die in vielen Fällen selbst aufgezwungene Trennung zwischen host-software und firmware dar: In src-atmel finden sich Zahlreiche Projekte, deren Host-Software in einem Unterverzeichnis des jew. Projektes liegt.
Nicht ganz so gravierend, aber dennoch störend ist die redundate Konfiguration, die oft getätigt werden muss: So muss z.B. jedes Mal das Makefile angepasst werden, wenn man ein Projekt nachbaut. Wünschenswert wäre eine zetrale Makefile, in der man z.B. seinen Programmer einstellt. Diese Makefile würde dann einfach von den Projektmakefiles includiert.
Auf der Diskussionsseite dieser Wiki-Seite können und sollten nun Vorschläge zur Verbesserung der Situation niedergeschrieben werden. Das SVN sollte über kurz oder lang umstrukturiert werden.
Probleme mit Spam
Die Tickets im Trac wurden von Spammern missbraucht. Sollte wieder so etwas auftauchen, lässt sich das entsprechende Ticket mit folgendem Befehl löschen:
trac-admin <tracdir> ticket remove <ID>
Das Erstellen und Verändern von Tickets und Trac-Wiki-Seiten ist nur noch nach erfolgreichem Login möglich. Wir haben diese Maßnahme ergriffen um Attacken von Spammern in Zukunft zu verhindern. Solltest du ein Anliegen haben oder einen Account benötigen wende dich einfach über einen der in Kontakt beschriebenen Wege an uns.