====== Anleitung zu Redmine ======
Redmine ist ein Projektmanagement-Werkzeug, welches primär auf den Prozess der Softwareentwicklung abzielt. Darin können:
- **Tickets verwaltet werden**: Ein Ticket kann ein gefundener //Fehler//, ein gewünschtes //Feature//, ein benötigter //Support// oder ein algemeines //ToDo// sein. Tickets ersetzen einen Großteil des Mail-Austauschs.
- **Gantt-Diagramm erstellt werden**: Im //Gantt-Diagramm// ist die zeitliche Planung des Projekts zu sehen. Jedes Ticket, bei dem ein zeitlicher Rahmen (//Beginn// und //Abgabedatum//) angegeben wurde, wird darin dargestellt.
- **Arbeitsprodukte und Dokumentation versioniert werden**: Im //Projektarchiv// sind die Dateien aller Versionen zugreifbar. Dazu wird bei MR-Elektronik zusätzlich das Werkzeug Subversion genutzt.
- **Dokumentation und Protokoll abgelegt werden**: Dies kann leicht in jedem einzelnen Projekt über das //Wiki// geschehen.
Da damit auch die Planung und Ablage mehrere Projekte leicht möglich ist, werden bei MR-Elektronik alle Projekte darüber verfolgt.
===== Vorbereitung =====
* Bevor Sie das Werkzeug nutzen können müssen Sie sich beim [[https://redmine.hs-heilbronn.de/|Redmine-Server der Hochschule]] erstmals anmelden. Damit wird Ihr User in dem Werkzeug angelegt. \\ Beachten Sie, dass redmine aktuell noch in der "alten Welt" liegt, und Sie dies in eduVPN auswählen müssen. \\ Schreiben Sie mir eine kurze Mail**, wenn Sie sich angemeldet haben**
* Erst wenn ich Ihre Mail erhalten und Sie angemeldet habe, können Sie in Redmine weiterarbeiten.
* Da das Versionierungstool Subversion (=SVN) genutzt wird, sollte für dieses auch ein Interface auf Ihrem Computer installiert werden. Dies ermöglicht die Anwendung [[https://tortoisesvn.net/downloads.html|tortoiseSVN]] für Windows. Linuxanwender können auf [[http://wiki.rabbitvcs.org/wiki/download|rabbitVCS]] zurückgreifen - die folgende Beschreibung geht aber von tortoiseSVN aus. Bitte installieren Sie diese Anwendung vor Beginn Ihres Projekts.
* Suchen Sie sich auf einem Datenträger (z.B. Festplatte) ein geeignetes Ordner, in dem Sie die beiden Unterordner "WS18" (bzw. Ihr Semester) und daneben "basic PCBs" anlegen. Diese beiden Ordner werden im folgenden mit dem Versionierungsserver über tortoiseSVN verbunden.
* ++Hinweis für Studierende, welche Projektarbeiten (Seminararbeiten, Abschlussarbeiten, etc.) bei mir bearbeiten:| Die Ablagen für Projektarbeiten sind im separaten Unterkapitel "Projektarbeiten" in Redmine zu finden ++
===== Erste Schritte in Redmine =====
{{elektronik_labor:redmine_projektauswahl.jpg?150}}
**Wichtig**: Für die folgenden Schritte müssen Sie bereits als User den richtigen Projekten zugewiesen worden sein! Dies erfolgt durch den Professor.
* Bei der ersten Verwendung von Redmine gelangen Sie auf eine Übersichtsseite. Aus dieser kommen Sie über das Dropdown-Feld "Zu einem Projekt springen …" zu dem jeweiligen Projekt.
* Wichtige Projekte für Sie sind:
* **basic PCBs** Die Ablage der eagle Files von grundlegenden Platinen, sowie diverser Doku.
* **23WS** (bzw. Ihr Semester): Die Ablage Ihrer eagle Files und diverser Doku.
* **PrjX_xxx**: Ihr eigenes Projekt mit Ticketing, Wiki und Gantt-Diagramm
* In den jeweiligen Projekten finden Sie folgende Reiter
* **Übersicht**: Darstellung des Ticketverlaufs
* **Aktivität**: Wer hat was wann bei Ihnen im Projekt (auf der Projektablage) geändert? {{elektronik_labor:redmine_projektansicht.jpg?400}}
* **Tickets**: Detaillierte Beschreibung der einzelnen Tickets. Möglichkeit neue Tickets anzulegen
* **Gant-Diagramm**: Darstellung des zeitlichen Projektablaufs, welcher aus den Tickets generiert wird
* **Wiki**: Dokumentationsseite. Dort sollte Sie anfängliche Projektidee und das Protokoll niederschreiben. Bis zum Ende des Projekts soll hier die Dokumentation als oberstes Kapitel erstellt werden.
* **Projektarchiv**: Darstellung der hochgeladenen Dateien - ist nur im Projekt "basic PCBs" und "18WS" (bzw. Ihr Semester) eingebunden.
===== Erste Schritte mit tortoiseSVN =====
{{elektronik_labor:tortoissvn_checkout.jpg?400}}
**Wichtig**: Für die folgenden Schritte müssen Sie bereits als User den richtigen Projekten zugewiesen worden sein! Dies erfolgt durch den Professor.
* **SVN Checkout**: Zunächst sind die angelegten Ordner auf Ihrem Datenträger den jeweiligen SVN-Repositories zuzuordnen:
* Klicken Sie dazu mit der rechten Maustaste auf den Ordner "basic PCBs" im File Explorer.
* Wählen Sie dann "SVN Checkout…" und geben Sie dort bei "URL of repository:" folgenden Link ein:
https://redmine.hs-heilbronn.de/subversion/microcontroller-grundplatinen/
* Bestätigen Sie mit OK (danach kann eine Passwortabfrage erscheinen)
* Im Folgenden werden alle aktuellen Dateien, welche im SVN von "basic PCBs" vorhanden sind, in den Ordner kopiert
* Verfahren Sie entsprechend mit dem Link:
https://redmine.hs-heilbronn.de/subversion/ws23 (bzw. ihr Semester)
* Wenn Sie nur an einem **einzelnen Projekt** aus einem älteren Semester interessiert sind, lohnt sich häufig nicht alle Projekte auszuchecken, da dies mehrere GByte an Daten umfasst. In diesem Fall sollte über "Choose items…" nur das einzelne Projekt ausgewählt werden.{{elektronik_labor:tortoissvn_commit.jpg?400}}
* **SVN Commit**: Nun können Sie auch Änderungen an den Dateien vornehmen (neu anlegen, ändern, löschen). Dieser werden aber zunächst nur lokal auf Ihrem Datenträger ausgeführt. Zum Ändern auf dem Server gehen sie wiefolgt vor:
* Rechtsklick auf die Datei oder den Ordner, der auf dem Server geändert werden soll
* Klick auf "SVN Commit …"
* Geben Sie bei Message kurz den Grund der Änderung ein (länger als "." oder "update", z.B. "motor PCB updated")
* Wählen Sie bei "Changes made" die gewünschten Dateien aus. Ggf. kann "All" angeklickt werden
* Klick auf OK
* **SVN Update**: Es kann auch entsprechend sein, dass sich Dateien auf dem Server geändert haben und Sie diese bei sich auf den Datenträger bringen wollen. Oder Sie sind sich nicht sicher, ob Ihre Daten auf dem Datenträger aktuell sind. In diesem Falle können Sie folgendes tun:
* Rechtsklick auf die Datei oder den Ordner, der auf Ihrem Datenträger geändert/aktualisiert werden soll
* Klick auf "SVN Update"
* Achtung: Falls Sie Änderungen auf dem Datenträger gemacht haben werden diese dabei **ohne Rückfrage gelöscht**
* Weitere Versionierungsmlglichkeiten ergeben sich bei Dateien und Ordnern im Menü unter "TortoiseSVN". Diese sind z.B. im deutschen [[https://tortoisesvn.net/docs/release/TortoiseSVN_de/index.html|Handbuch von TortoiseSVN]] beschrieben