Software Versionsverwaltung mit SVN: Unterschied zwischen den Versionen
Zeile 20: | Zeile 20: | ||
Im Internet finden sich zahlreiche Anleitungen zu SVN und der Bedienung mit Tortoise SVN. | Im Internet finden sich zahlreiche Anleitungen zu SVN und der Bedienung mit Tortoise SVN. | ||
*[https://tortoisesvn.net/docs/release/TortoiseSVN_de/index.html TortoiseSVN.net] | *[https://tortoisesvn.net/docs/release/TortoiseSVN_de/index.html TortoiseSVN.net] | ||
*[https://www.fbi.h-da.de/fileadmin/personal/b.humm/CNAM_SWT_WS0708/Praktikum/SVN-Tutorial.pdf HS Darmstadt] | <!-- *[https://www.fbi.h-da.de/fileadmin/personal/b.humm/CNAM_SWT_WS0708/Praktikum/SVN-Tutorial.pdf HS Darmstadt] --> | ||
*[http://www.daniel-jettka.de/pdf/Dialogsysteme-2008-09/TortoiseSVN.pdf Daniel Jettka] | <!-- *[http://www.daniel-jettka.de/pdf/Dialogsysteme-2008-09/TortoiseSVN.pdf Daniel Jettka]--> | ||
*[https://www.yumpu.com/de/document/read/51705749/kurzanleitung-zu-tortoisesvn-daniel-jettka Daniel Jettka ] | *[https://www.yumpu.com/de/document/read/51705749/kurzanleitung-zu-tortoisesvn-daniel-jettka Daniel Jettka ] | ||
*[https://www.youtube.com/channel/UC0eecZ7qnyCwMGd69vcFw1g William Echlin] | *[https://www.youtube.com/channel/UC0eecZ7qnyCwMGd69vcFw1g William Echlin] |
Version vom 27. März 2020, 18:59 Uhr
Einleitung
Als Software Versionsverwaltung nutzen wir an der HSHL Subversion (SVN). Subversion ist ein freies/Open-Source Versionskontrollsystem. Das bedeutet, Subversion verwaltet Dateien und Verzeichnisse und die Änderungen an ihnen im Lauf der Zeit. Das erlaubt Ihnen, alte Versionen Ihrer Daten wiederherzustellen oder die Geschichte der Änderungen zu verfolgen. Unter diesem Blickwinkel denken viele Leute bei einem Versionskontrollsystem an eine Art „Zeitmaschine“.
Subversion kann netzwerkübergreifend arbeiten, was die Benutzung durch Menschen an verschiedenen Computern ermöglicht. Auf einer bestimmten Ebene fördert die Fähigkeit unterschiedlicher Personen dieselbe Menge an Daten bearbeiten und verwalten zu können die Zusammenarbeit. Ohne auf einen einzigen Kanal, über den alle Änderungen abgewickelt werden müssen, beschränkt zu sein, kann das Vorankommen beschleunigt werden. Und weil die Arbeit versioniert ist, braucht nicht befürchtet zu werden, dass die Qualität bei Verlust dieses Kanals geopfert wird – falls irgendeine falsche Änderung an den Daten gemacht wird, kann man sie einfach zurücknehmen.
USVN ist ein browserbasiertes Verwaltungssystem. Auf Ihrem Rechner benötigen Sie eine Client-Software um auf den Server zugreifen zu können. Eine ausführliche Zusammenstellung verfügbarer Clients finden Sie unter dieser Zusammenstellung und Vergleich von SVN-Clients, die für jeden Client die abgedeckten Funktionen aufführt.
Warum sollten Sie SVN nutzen?
- Ihre Daten sind auf einem Server sicher und weltweit für Sie zugänglich.
- Teammitglieder können auf ihre Arbeitsergebnisse zugreifen, auch wenn Sie verhindert sind.
- Kommentare ermöglichen die schnelle Identifizierung von Änderungen.
- Änderungen erfolgen persönlich - sie finden über die Historie sofort heraus, wer was programmiert hat.
- Dateien liegen ihnen nur in einer Version vor - der aktuellen. Die Historie dieser Datei ist jederzeit rückverfolgbar und wiederherstellbar.
- Fertige Stände Ihrer Software können mit einem Stempel (Tag) versehen und später schnell wiederhergestellt werden.
- Versionsverwaltung ist Industriestandard und die Übung im Studium wird Ihnen später helfen sich zurecht zu finden.
Handbücher/Einführungen
Im Internet finden sich zahlreiche Anleitungen zu SVN und der Bedienung mit Tortoise SVN.
SVN Quickstart
- Loggen Sie sich via [1] 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]) inkl. "Language-Pack"
- Hochschulrechner:
- Legen Sie sich auf der Datenpartition unter \SVN ein Repositorium an.
- Sichern Sie alle Ihren Quelltext in Ihrem Gruppenordner.
- Eigener Rechner:
- Beliebigen Ornder erstellen (Empfehlung: Ordner ohne Leerstellen etc. verwenden, damit für Programmierung/Matlab/... keine Probleme)
- SVN > auschecken/checkout
- Machen Sie sich mit der Funktion von SVN bekannt.
- Antworten auf alle Fragen finden Sie hier.
Grundregeln im Umgang mit SVN
- Sperren ("Lock") Sie Dateien nur dann, wenn diese zur Bearbeitung eine Sperre benötigen. Normalfall: Nie! Bei binären Dateien (Office-Dokumente, Bilder,...): Immer!
- Sperren werden Automatisch entfernt beim Commiten oder Manuel über das Context Menu.
- Sperren können über "
Check for Modifications
" überprüft werden. (Lokale tauchen direkt auf und um alle zusehen muss "Check Repository" verwendet werden)
- Übertragen (engl. "commit") Sie nur mit Kommentaren.
- Kommentare sollten Verständlich und Kurz gehalten werden.
- Führen Sie zu Beginn Ihrer Arbeit und vor jedem Commit stets ein Update durch.
- Lesen Sie ggf. zu Beginn Ihrer Arbeit das Log-File ("
Show Log
") und befolgen Sie die Hinweise. - Verschieben Sie Inhalte nur mit der rechten Maustaste "
SVN Move versioned Item(s) here
". - Speichern keine Compiler-Dateien oder Backups (z. B.
.asv, .bkp, ~Dateinamen
) in SVN. Versionieren Sie ausschließlich die Primärdateien. - Vermeiden Sie in Ordnerbezeichnungen und Dateiennamen Sonderzeichen, Freizeichen und Umlaute (z. B.
Uebung_1_2
). - Cleanup wird benötigt, wenn Fehler aufgetreten sind bei einem Commit oder Update.
- Cleanup sollte im Obersten Ornder verwendet werden.
- In den meisten Fällen sollte "
Clean up working copy status
" und "Refresh shell overlays
" genügen. - Genaue Befehl Beschreibung ist hier aufzufinden [2]
- Weitere TortoiseSVN Regeln
Umgang mit binären (nicht textbasierten) Dateien
SVN spielt seine Stärke besonders dann aus, wenn textbasierte Dateien versioniert werden sollen, z. B. Programmcode, Skripte etc. Beim Versionieren werden dann die Änderungen von verschiedenen Nutzern zusammengeführt.
Bei binären Dateien (Bilder, Excel-Tabellen, ...) macht dieses Vorgehen keinen Sinn, da durch das Zusammenführen nicht mehr richtig interpretierbare Dateien resulieren können. Um auch diese Dateien per SVN versionieren zu können, müssen so genannte Sperren genutzt werden. Vorgehen beim Arbeiten mit Sperren:
- Per Rechtsklick - Tortoise SVN - Eigenschaften - Neu - Dateisperre kann eingestellt werden, dass eine Datei eine Sperre benötigt.
- Eine Datei mit dieser Eigenschaft ist dann in jeder Arbeitskopie zu Beginn gesperrt, d. h. schreibgeschützt.
Zum Arbeiten mit dieser Datei befolgen Sie folgende Schritte:
- Rechtsklick auf die Datei - Tortoise SVN - Sperre holen >> Datei ist entsperrt, d. h. veränderbar (Schreibschutz aufgehoben)
- Datei ändern und speichern
- Beim Übertragen per Rechtsklick auf die Datei - Tortoise SVN - Übertragen ist die Datei wieder gesperrt.
- Hinweis: Beim letzten Schritt kann das automatische Wieder-Sperren deaktiviert werden, falls Sie z. B. gleich weiter mit der Datei arbeiten möchten.
Wann sollte man Daten übertragen?
- Sie haben einen SW-Stand zu dem Sie zurückkehren möchten.
- Übertragen Sie zusammenhängenden Dateien in einer operation. Nutzen Sie eine LOG-Nachricht für alle Dateien.
- Übertragen Sie Daten als Backup.
- Übertragen Sie Daten von einem Arbeitsrechner um sie mit anderen zu teilen.
Anforderungen an Ihr Passwort
Für das Arbeiten mit SVN ist zwingend ein sicheres Passwort erforderlich. Bechaten Sie nachfolgende Regeln
- Das Passwort muss mindestens 12 Zeichen umfassen.
- Es sollte mindestens 2 Sonderzeichen, eine Zahl, einen Kleinbuchstaben und einen Großbuchstaben enthalten.
- Für das Passwort sind folgende Zeichen erlaubt:
- Kleinbuchstaben ( a - z )
- Großbuchstaben ( A - Z )
- Ziffern ( 0 - 9 )
- die Sonderzeichen ( ) [ ] { } ? ! $ % & / = * + ~ , . ; : < > - _
Verbindungsprobleme
Bei Verbindungsproblemen schreiben Sie bitte eine Email an die IT (it-support@hshl.de) und beschreiben Sie freundlich Ihr Problem und senden Sie folgende Infos:
- Betreff: Ticket#2013120310000018
- Fehlermeldung
- Zeit
- Client
- Netz (HSHL oder Web incl. IP Adresse)