Einarbeitung in die Versionsverwaltung SVN

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Autor: Prof. Dr.-Ing. Schneider
Lehrveranstaltung: Mechatronik, Informatikpraktikum, 1. Semester, Lektion 1

Fragestellungen, Begriffe und Voraussetzungen

Fragestellungen

Eine Versionsverwaltung dient einerseits dazu Daten auf einem Server zu sichern und so dass weltweite kollaborierte Arbeiten zu ermöglichen. Andererseits bietet sie die Möglichkeit ältere Projektstände verschiedener Dateien wieder herzustellen. Wesentliche Fragestellung sind die Funktion der Versionsverwaltung mit Fokus auf den Datentransfer und dem praktischen Umgang. Als Software Versionsverwaltung verwenden wir an der Hochschule Hamm-Lippstadt Subversion (kurz SVN). Hierfür gibt es kostenlose Clients für Win und Mac. Versionsverwaltung und nachhaltiges Arbeiten ist ein wichtiger Bestandteil Ihres Studiums, daher führen wir Sie bereits im 1. Semester heran.

Eingeführte Begriffe und Konzepte

Die Bedienoberfläche uSVN und der Client Turtoise SVN wird vorgestellt. Der Umgang mit den wesentlichen Funktionen wird geübt. Neue Begriffe sind: Checkout, Comit, Update, Tag, Branch, Trunk, Show Log, Repro-browser, Revert, Clean up, Get lock, Merge und Diff.

Voraussetzungen

Grundlagen der PC-Bedienung sind erforderlich.

Lernziele

Nach Durchführung dieser Lektion

  • können Sie die Verbindung zum Vorlesungs-SVN herstellen.
  • können Sie auf Daten zugreifen und diese wieder auf dem Server versioniert sichern.
  • können Sie kollaboriert im Team auf dem SVN-Server arbeiten.
  • können Sie Dateikonflikte elegant lösen.
  • fühlen Sie sich sicher im Umgang mit der Versionsverwaltung SVN.
  • können Sie mittels Arduino IDE Programme anlegen, globale Variablen anlegen, den Arduino programmieren, einen Text im seriellen Monitor ausgeben und eine LED ansteuern.

Lernzielkontrolle

  1. Legen Sie auf Ihrem Rechner ein (lokales) SVN-Projektarchiv an, z. B. D:/SVN/Gruppenordner.
  2. Checken Sie eine Arbeitskopie des Arbeitsordners aus. URL: https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Gruppen/Gruppen_WS2223
  3. Schreiben Sie eine Textdatei Test.txt mit beliebigem Inhalt.
  4. SVN/Commit; Schreiben Sie einen passenden Log-Text.
  5. Checken Sie eine 2. Arbeitskopie aus.
  6. Ändern Sie etwas in beiden Arbeitskopien gleichzeitig, aber in unterschiedlichen Zeilen
  7. SVN/Commit beider Arbeitskopien
  8. Analysieren Sie die Differenz.
  9. Ändern Sie etwas in beiden Arbeitskopien gleichzeitig, aber in GLEICHEN Zeilen
  10. SVN/Commit beider Arbeitskopien
  11. Lösen Sie den Konflikt mit: Merge
  12. Legen Sie einen Tag an.
  13. Stellen Sie einen alten Stand wieder her.
  14. Erläutern Sie im Dokument SVN_Dokumentation.pdfdie SVN-Begriffe
    1. Checkout, Update, Commit,
    2. Merge, Diff, Log,
    3. Trunk, Tag, Branch, Switch,
    4. Show log, Repo Browser und Revision Graph

Inhalt

Als Software Versionsverwaltung verwenden wir an der Hochschule Hamm-Lippstadt Subversion (kurz SVN). Hierfür gibt es kostenlose Clients für Win und Mac. Versionsverwaltung und nachhaltiges Arbeiten ist ein wichtiger Bestandteil Ihres Studiums, daher führen wir Sie bereits im 1. Semester heran.

Versuchsvorbereitung

Studieren Sie unseren Artikel zu SVN im HSHL Wiki.

SVN Quickstart

  • Loggen Sie sich via USVN ein und ändern Sie Ihr Passwort
  • Vorname_Nachname::Kennwort1 (z. B. Max_Mustermann Kennwort1)
  • Prüfen Sie, ob Sie Zugang zum passenden Repositorium haben.
  • Installieren Sie Tortoise SVN für Windows (Mac) in englischer Sprache.
  • Legen Sie sich auf der Datenpartition unter D:\SVN ein Repositorium "Informatikpraktikum1" an.
  • Machen Sie sich mit der Funktion von SVN bekannt.
  • Sichern Sie alle Ihren Quelltext in Ihrem Gruppenordner.
  • Antworten auf alle Fragen finden Sie hier.

Studieren Sie diese Inhalte:

Login

Nutzer*in: Vorname_Nachname
Kennwort: Kennwort1

Hinweis: Bitte ändern Sie das Kennwort sofort nach dem 1. Login.

Links

Video-Tutorials

Mit den folgenden Video Tutorial lernen Sie spielend leicht und kostenlos den Einstieg in die Versionskontrolle:

  • Christopher Janietz - Versionskontrolle mit Git und SVN bei LinkedIn
  • Julian Robichaux - SVN for Java Developers bei LinkedIn

Den kostenlosen Zugang zum LinkedIN Portal erhalten Sie über den Bibliothekskatalog im Bereich "Lizenzierte Datenbanken".

Versuchsdurchführung

Aufgabe 1.1

Präsentieren Sie Prof. Schneider das Ergebnis der Lernzielkontrolle.

Aufgabe 1.2

Befassen Sie sich mit der Arduino-Uno Hardware und beantworten Sie die Fragen:

  1. Welches sind die technischen Daten eines Arduino UNO R3?
    1. Mikrocontroller
    2. Spannungsversorgung
    3. Betriebsspannung
    4. Digitale I/O
    5. Analoge I/O
    6. Strom pro digitalem Pin
    7. Flash Memory
    8. SRAM
    9. EEPROM
    10. Taktfrequenz
    11. Programmierschnittstelle
    12. ISCP-Schnittstelle
  2. Recherchieren und erläutern Sie diese Fachbegriffe.
  3. Untersuchen Sie das Breadboard. Wie ist es aufgebaut?

Aufgabe 1.3

Programmieren Sie Ihr erstes Programm im Bereich setup mit der Arduino IDE.

  1. Nehmen Sie Verbindung zum Arduino auf. Der Geräte-Manager zeigt Ihnen an welchem COM-Port der Arduino angeschlossen ist.
  2. Legen Sie in Ihrem Arbeitsordner ein neues Sketch an.
  3. Schreiben Sie einen Header.
  4. Ihr Programm soll einmalig "Hallo Welt" im seriellen Monitor ausgeben.
  5. Kompilieren Sie Ihr Programm und übertragen Sie es auf den Arduino.
  6. Werten Sie Ihr Programm mit Kommentaren auf.

Nützliche Befehle: Serial.begin(), Serial.print(), Serial.println()

Aufgabe 1.4

Erweitern Sie Ihr erstes Programm im Bereich loop. Auf dem Arduino ist an Pin 13 eine Test-LED verbaut. Lassen Sie die LED im Sekundentakt blinken.

  1. Legen Sie als globale Variable die Konstante LED_PIN mit dem Wert 13 vom Typen integer an.
  2. Initialisieren Sie im Bereich setup den digitalen Port LED_PIN als Ausgang.
  3. Schalten Sie die LED zyklisch für 1 s an und aus.
  4. Werten Sie Ihr Programm mit Header und Kommentaren auf.

Nützliche Befehle: pinMode(), digitalWrite(), delay()

Aufgabe 1.5

Sichern Sie alle Ergebnisse mit beschreibendem Text (message) in SVN.

  • Wurden die Regeln für den Umgang mit SVN eingehalten?
  • Wurde nachhaltig dokumentiert?

Bewertung

Aufgabe Punkte
1.1 2
1.2 2
1.3 2
1.4 2
1.5 2

→ zurück zum Hauptartikel: Arduino Praxiseinstieg