Software Versionsverwaltung mit SVN: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(65 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:HowTo]]
[[Kategorie:HowTo]]
[[Datei:Apache Subversion logo.svg.png|thumb|rigth|350px|Abb. 1: Einarbeitung in die Versionsverwaltung SVN]]
Autor: [[Benutzer:Ulrich_Schneider| Prof. Schneider]]
== USVN ==
uSVN Benutzeroberfläche: [https://svn.hshl.de/ https://svn.hshl.de/]


== Einleitung ==
== Einleitung ==
Zeile 19: Zeile 24:
== Handbücher/Einführungen ==
== Handbücher/Einführungen ==
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.
*[http://tortoisesvn.net/docs/release/TortoiseSVN_de/tsvn-dug.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 ]


== SVN Quickstart ==
== SVN Schnellstart ==


# Loggen Sie sich via [https://svn.hshl.de/usvn/login/] ein und ändern Sie Ihr Passwort
# Loggen Sie sich via [https://svn.hshl.de/usvn/login/ usvn] ein und ändern Sie Ihr Passwort
# Vorname_Nachname::Kennwort1 (z.B. Max_Mustermann Kennwort1)
# Vorname_Nachname::Kennwort1 (z.&thinsp;B. Max_Mustermann Kennwort1). Achtung, Groß- und Kleinschreibung sind bei Nutzername und Passwort zu beachten!
# Prüfen Sie, ob Sie Zugang zum passenden Repositorium haben.
# Prüfen Sie, ob Sie Zugang zum passenden Repositorium haben.
# Installieren Sie [http://tortoisesvn.net/ Tortoise SVN] für Windows ([http://gigaom.com/2009/02/23/12-subversion-apps-for-os-x/ Mac]]) inkl. "Language-Pack"
# Installieren Sie [http://tortoisesvn.net/ Tortoise SVN] für Windows ([[SVN_Client_für_Mac|Mac]]) inkl. "Language-Pack"
# Hochschulrechner:
# Hochschulrechner:
## Legen Sie sich auf der Datenpartition unter \SVN ein Repositorium an.
## Legen Sie sich auf der Datenpartition unter \SVN ein Repositorium an.
## Sichern Sie alle Ihren Quelltext in Ihrem Gruppenordner.
## Sichern Sie alle Ihren Quelltext in Ihrem Gruppenordner.
# Eigener Rechner:
# Eigener Rechner:
## Beliebigen Ornder erstellen (Empfehlung: Ordner ohne Leerstellen etc. verwenden, damit für Programmierung/Matlab/... keine Probleme)
## Beliebigen Ordner erstellen (Empfehlung: Ordner ohne Leerstellen etc. verwenden, damit für Programmierung/Matlab/... keine Probleme)
## SVN > auschecken/checkout
## SVN > auschecken/checkout
# Machen Sie sich mit der Funktion von [http://www.youtube.com/watch?v=Bz7o5bRgDIM SVN] bekannt.
# Machen Sie sich mit der Funktion von [http://www.youtube.com/watch?v=Bz7o5bRgDIM SVN] bekannt.
Zeile 39: Zeile 45:


== Grundregeln im Umgang mit SVN ==
== Grundregeln im Umgang mit SVN ==
# Sperren Sie Dateien nur dann, wenn diese zur Bearbeitung eine Sperre benötigen. Normalfall: Nie! Bei binären Dateien (Office-Dokumente, Bilder,...): Immer!
Nutzen Sie die folgende Liste und arbeiten Sie nachhaltig in SVN. Diese Liste ist lang, lohnt sich jedoch '''sehr''', da sie die wichtigsten Regeln und Erkenntnisse beim Umgang und effizienten Arbeit mit SVN zeigt.
 
# Spätestens an jedem Arbeitstag sollten Sie ihre Daten ins Projektarchiv übertragen (="commit"), wenn nicht sogar nach jeder wichtigen Änderung
# Überlassen Sie SVN die Versionierung. Falsch wäre die Speicherung von 3 Dokumenten: <code>Dokument_v1, Dokument_v2, Dokument_v3</code>. Richtig: <code>Dokument</code> wurde 3x in SVN übertragen (<code>Commit</code>).
# Sichern Sie nur wichtige Dateien in SVN (auf keinen Fall Kompilat, Backup-Sicherheitskopien, temporäre Dateien (*.bak,...).
# Sichern Sie keine Binärdateien.
# Sichern Sie '''keine großen Videos oder große Bilder (max. 1MB pro Bild).''' Hier hilft z. B. ein Reduzieren der Auflösung oder Bildgröße.
# Testen Sie Ihren Quelltext sorgfältig vor dem Übertragen.
# Führen Sie zu Beginn Ihrer Arbeit und vor jedem "'''commit'''" stets ein "'''update'''" durch.
# Aktualisieren Sie vor dem Übertragen das gesamte Quellverzeichnis und testen Sie ggf. Ihre Funktion/Software etc. erneut.
# Sie sind verantwortlich für alle Fehler, die durch Ihr Änderungen entstehen. Also: testen, aktialisieren, Konflikte lösen, nochmal testen und übertragen.
# Sichern Sie nur getesteten Quellcode in SVN, welcher über Header und Kommentare verfügt.
# Übertragen Sie stets nur die Änderungen und nicht ein komplettes Verzeichnis.
# Wenn Sie eine Datei hinzufügen nutzen Sie <code>SVN Add</code> und anschließend <code>SVN Commit</code>
# Wenn es Konflikte gibt, kontaktieren Sie das Teammitglied und beheben Sie die Konflikte gemeinsam um Schäden zu vermeiden.
# Sie sind für Ihre Änderungen verantwortlich. Verwenden Sie Ihren Nutzernamen und Passwort.
# Checken Sie nur die Projekte aus, an denen Sie auch arbeiten.
# 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 Übertragungen (="commit") oder manuell über das Kontextmenü von z. B. TortoiseSVN.
## Sperren können über "<code>Check for Modifications</code>" überprüft werden. (Lokale tauchen direkt auf und um alle zusehen muss "Check Repository" verwendet werden)
# Übertragen (engl. "commit") Sie nur '''mit Kommentaren'''.
# Übertragen (engl. "commit") Sie nur '''mit Kommentaren'''.
# Führen Sie zu Beginn Ihrer Arbeit und vor jedem '''Commit''' stets ein '''Update''' durch.
## Kommentare sollten verständlich und kurz gehalten werden.
# Lesen Sie ggf. zu Beginn Ihrer Arbeit das Log-File ("<code>Show Log</code>") und befolgen Sie die Hinweise.
## Kommentare erläutern Ihrer Änderungen. Was haben Sie geändert? (Jedoch nicht: Welche Datei ist neu, welche gelöscht etc.: das sieht man im Log-Bericht automatisch)
# Verschieben Sie Inhalte nur mit der rechten Maustaste "<code>SVN Move versioned Item(s) here</code>".
## Anzahl der Änderungen
# Speichern keine Compiler-Dateien oder Backups (z. B. .asv, .bkp, ~Dateinamen) in SVN. Versionieren Sie ausschließlich die Primärdateien.
## Typ der Änderung (Änderung, Bug Fix,…)
## Was macht die Änderung?
## Wichtige Details
## Ggf. Link zur Anforderung
## Ggf. Link zum Testbericht
## Name und Datum sind nicht notwendig!
# Lesen Sie ggf. zu Beginn Ihrer Arbeit das '''Log-File''' ("<code>Show Log</code>") und befolgen Sie die Hinweise.
# '''Verschieben''' Sie Inhalte nur mit der rechten Maustaste "<code>SVN Move versioned Item(s) here</code>".
# Versionieren Sie ausschließlich die Primärdateien. '''Nicht''' erlaubt sind:
## Compiler-, Build- oder Debug-Dateien oder Backups (z. B. <code>.asv, .bkp, ~Dateinamen</code>)
## Temporäre Ordner oder Ordner die nur für den Arbeitsrechner erstellt werden (z.&#8239;B. <code>.vs</code>)
## Videodateien die '''nicht''' als Eingabedatei für Programme dienen
## Externe Bibliotheken die im gleichen Umfang im Internet zur Verfügung stehen (z.&#8239;B. opencv)
# Vermeiden Sie in Ordnerbezeichnungen und Dateiennamen Sonderzeichen, Freizeichen und Umlaute (z. B. <code>Uebung_1_2</code>).
# Cleanup wird benötigt, wenn Fehler aufgetreten sind bei einem <code>Commit</code> oder <code>Update</code>.
## Cleanup sollte im Obersten Ornder verwendet werden.
## In den meisten Fällen sollte "<code>Clean up working copy status</code>" und "<code>Refresh shell overlays</code>" genügen.
## Genaue Befehl Beschreibung ist hier aufzufinden [https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-dug-cleanup.html]
## [[TortoiseSVN Regeln| Weitere TortoiseSVN Regeln]]


== Umgang mit binären (nicht textbasierten) Dateien ==
== Umgang mit binären (nicht textbasierten) Dateien ==
Zeile 58: Zeile 101:
# Beim Übertragen per Rechtsklick auf die Datei - Tortoise SVN - Übertragen ist die Datei wieder gesperrt.
# 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.
# 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 Nachricht (engl. Message) für alle Dateien.
# Übertragen Sie Daten als Backup.
# Übertragen Sie Daten von einem Arbeitsrechner, um diese mit anderen zu teilen.


== Anforderungen an Ihr Passwort ==
== Anforderungen an Ihr Passwort ==
Zeile 68: Zeile 117:
** Ziffern ( 0 - 9 )
** Ziffern ( 0 - 9 )
** die Sonderzeichen ( ) [ ] { } ? ! $ % & / = * + ~ , . ; : < > - _
** die Sonderzeichen ( ) [ ] { } ? ! $ % & / = * + ~ , . ; : < > - _
== Keine Zugriffsrechte ==
Wenn Sie auf Ihren Ordner auf einem Hochschulrechner keine Zugriffsrechte habe, obwohl diese eingerichtet wurden, kann es sein, das eine Vorgängerin das Password gespeichert hat.
Mit nachfolgenden Schritten löschen Sie das hinterlegte Passwort:
* Tortoise SVN > Settings
* Saved Data > Authentification data > Clear all
[[Datei:ClearAll.jpg|600px]]


== Verbindungsprobleme ==
== Verbindungsprobleme ==
Zeile 76: Zeile 134:
* Client
* Client
* Netz (HSHL oder Web incl. [http://whatismyipaddress.com/ IP Adresse])
* Netz (HSHL oder Web incl. [http://whatismyipaddress.com/ IP Adresse])
== Einführungsvideo ==
{{#ev:youtube|https://youtu.be/DfjN9OqkA34 | 400 | |Video Kurzeinführung|frame}}
Hinweis: Für die Ansicht dieses privaten Videos ist eine Anmeldung bei YouTube erforderlich.
== 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 [https://www.linkedin.com/learning/versionskontrolle-mit-git-und-svn/willkommen-zu-versionskontrolle-mit-git-und-svn?u=76882098 LinkedIn]
* Julian Robichaux - SVN for Java Developers bei [https://www.linkedin.com/learning/svn-for-java-developers/tortoisesvn-on-windows?u=76882098 LinkedIn]
Den kostenlosen Zugang zum LinkedIN Portal erhalten Sie über den Bibliothekskatalog unter dem Reiter [https://hshl.bsz-bw.de/cgi-bin/koha/opac-main.pl "Literatur und Fachdatenbanken"].
== Umgang mit Visual Studio 2019 ==
Daten, die beim Build-Prozess entstehen haben, wie oben beschrieben, keinen Nutzen in einer Versionskontrolle. Dieser Artikel beschreibt, welche Daten dies für [[SVN Versionskontrolle von Visual Studio 2019 Projektmappen|Visual Studio 2019]] beispielsweise sind.


== Weblinks ==
== Weblinks ==
[[Datei:000001.jpg|mini| Versionskontrolle mit Git und SVN]]
[[Datei:000001.jpg|mini| Versionskontrolle mit Git und SVN]]
*[[SVN Versionskontrolle von Visual Studio 2019 Projektmappen]]
*[http://de.wikipedia.org/wiki/Apache_Subversion Wikipedia-Artikel: Apache_Subversion]
*[http://de.wikipedia.org/wiki/Apache_Subversion Wikipedia-Artikel: Apache_Subversion]
*[https://en.wikipedia.org/wiki/Comparison_of_Subversion_clients Comparison of Subversion clients]
*[http://gigaom.com/2009/02/23/12-subversion-apps-for-os-x/ Subversion Apps for OS X]
*[http://gigaom.com/2009/02/23/12-subversion-apps-for-os-x/ Subversion Apps for OS X]
*[http://youtu.be/DfjN9OqkA34 Video Kurzeinführung]
*[http://youtu.be/DfjN9OqkA34 Video Kurzeinführung (Anmeldung erforderlich)]
*[https://www.video2brain.com/de/videotraining/versionskontrolle-mit-git-und-svn?utm_source=notification_email&utm_medium=email '''Top Tipp:''' V2B Versionskontrolle mit Git und SVN]
*[https://www.video2brain.com/de/videotraining/versionskontrolle-mit-git-und-svn?utm_source=notification_email&utm_medium=email '''Top Tipp:''' V2B Versionskontrolle mit Git und SVN]
*[http://svnnotifier.tigris.org/ SVN Notify]
*[http://svnnotifier.tigris.org/ SVN Notify]
*[https://www.youtube.com/channel/UC0eecZ7qnyCwMGd69vcFw1g William Echlin]
*[https://www.youtube.com/watch?v=7unVsxU2t_I Tortoise Tutorial 1 auf Deutsch - Funktionsweise von SVN kurz erklärt (German)]
*[https://www.youtube.com/watch?v=ctApF1J665U Tortoise Tutorial 2 auf Deutsch - Repository erstellen und Datei Check-in (German)]
*[https://www.youtube.com/watch?v=tmrXD_MyRF8 Tortoise Tutorial 3 auf Deutsch - Datei Check-out an einen anderen Ort (German)]
*[https://www.youtube.com/watch?v=Cfg94eP-DTE Tortoise Tutorial 4 auf Deutsch - Datei Check-in einer neuen Version (German)]
== Literatur ==
*[https://tortoisesvn.net/docs/release/TortoiseSVN_de/index.html Handbuch Tortoise SVN]
*[https://tortoisesvn.net/docs/release/TortoiseMerge_de/index.html Handbuch Tortoise Merge]
→ zurück zum Hauptartikel: [[Praktikum_SDE|Praktikum SDE]]

Aktuelle Version vom 6. September 2024, 09:09 Uhr

Abb. 1: Einarbeitung in die Versionsverwaltung SVN

Autor: Prof. Schneider

USVN

uSVN Benutzeroberfläche: https://svn.hshl.de/

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 Schnellstart

  1. Loggen Sie sich via usvn ein und ändern Sie Ihr Passwort
  2. Vorname_Nachname::Kennwort1 (z. B. Max_Mustermann Kennwort1). Achtung, Groß- und Kleinschreibung sind bei Nutzername und Passwort zu beachten!
  3. Prüfen Sie, ob Sie Zugang zum passenden Repositorium haben.
  4. Installieren Sie Tortoise SVN für Windows (Mac) inkl. "Language-Pack"
  5. Hochschulrechner:
    1. Legen Sie sich auf der Datenpartition unter \SVN ein Repositorium an.
    2. Sichern Sie alle Ihren Quelltext in Ihrem Gruppenordner.
  6. Eigener Rechner:
    1. Beliebigen Ordner erstellen (Empfehlung: Ordner ohne Leerstellen etc. verwenden, damit für Programmierung/Matlab/... keine Probleme)
    2. SVN > auschecken/checkout
  7. Machen Sie sich mit der Funktion von SVN bekannt.
  8. Antworten auf alle Fragen finden Sie hier.

Grundregeln im Umgang mit SVN

Nutzen Sie die folgende Liste und arbeiten Sie nachhaltig in SVN. Diese Liste ist lang, lohnt sich jedoch sehr, da sie die wichtigsten Regeln und Erkenntnisse beim Umgang und effizienten Arbeit mit SVN zeigt.

  1. Spätestens an jedem Arbeitstag sollten Sie ihre Daten ins Projektarchiv übertragen (="commit"), wenn nicht sogar nach jeder wichtigen Änderung
  2. Überlassen Sie SVN die Versionierung. Falsch wäre die Speicherung von 3 Dokumenten: Dokument_v1, Dokument_v2, Dokument_v3. Richtig: Dokument wurde 3x in SVN übertragen (Commit).
  3. Sichern Sie nur wichtige Dateien in SVN (auf keinen Fall Kompilat, Backup-Sicherheitskopien, temporäre Dateien (*.bak,...).
  4. Sichern Sie keine Binärdateien.
  5. Sichern Sie keine großen Videos oder große Bilder (max. 1MB pro Bild). Hier hilft z. B. ein Reduzieren der Auflösung oder Bildgröße.
  6. Testen Sie Ihren Quelltext sorgfältig vor dem Übertragen.
  7. Führen Sie zu Beginn Ihrer Arbeit und vor jedem "commit" stets ein "update" durch.
  8. Aktualisieren Sie vor dem Übertragen das gesamte Quellverzeichnis und testen Sie ggf. Ihre Funktion/Software etc. erneut.
  9. Sie sind verantwortlich für alle Fehler, die durch Ihr Änderungen entstehen. Also: testen, aktialisieren, Konflikte lösen, nochmal testen und übertragen.
  10. Sichern Sie nur getesteten Quellcode in SVN, welcher über Header und Kommentare verfügt.
  11. Übertragen Sie stets nur die Änderungen und nicht ein komplettes Verzeichnis.
  12. Wenn Sie eine Datei hinzufügen nutzen Sie SVN Add und anschließend SVN Commit
  13. Wenn es Konflikte gibt, kontaktieren Sie das Teammitglied und beheben Sie die Konflikte gemeinsam um Schäden zu vermeiden.
  14. Sie sind für Ihre Änderungen verantwortlich. Verwenden Sie Ihren Nutzernamen und Passwort.
  15. Checken Sie nur die Projekte aus, an denen Sie auch arbeiten.
  16. Sperren ("Lock") Sie Dateien nur dann, wenn diese zur Bearbeitung eine Sperre benötigen. Normalfall: Nie! Bei binären Dateien (Office-Dokumente, Bilder,...): Immer!
    1. Sperren werden automatisch entfernt beim Übertragungen (="commit") oder manuell über das Kontextmenü von z. B. TortoiseSVN.
    2. Sperren können über "Check for Modifications" überprüft werden. (Lokale tauchen direkt auf und um alle zusehen muss "Check Repository" verwendet werden)
  17. Übertragen (engl. "commit") Sie nur mit Kommentaren.
    1. Kommentare sollten verständlich und kurz gehalten werden.
    2. Kommentare erläutern Ihrer Änderungen. Was haben Sie geändert? (Jedoch nicht: Welche Datei ist neu, welche gelöscht etc.: das sieht man im Log-Bericht automatisch)
    3. Anzahl der Änderungen
    4. Typ der Änderung (Änderung, Bug Fix,…)
    5. Was macht die Änderung?
    6. Wichtige Details
    7. Ggf. Link zur Anforderung
    8. Ggf. Link zum Testbericht
    9. Name und Datum sind nicht notwendig!
  18. Lesen Sie ggf. zu Beginn Ihrer Arbeit das Log-File ("Show Log") und befolgen Sie die Hinweise.
  19. Verschieben Sie Inhalte nur mit der rechten Maustaste "SVN Move versioned Item(s) here".
  20. Versionieren Sie ausschließlich die Primärdateien. Nicht erlaubt sind:
    1. Compiler-, Build- oder Debug-Dateien oder Backups (z. B. .asv, .bkp, ~Dateinamen)
    2. Temporäre Ordner oder Ordner die nur für den Arbeitsrechner erstellt werden (z. B. .vs)
    3. Videodateien die nicht als Eingabedatei für Programme dienen
    4. Externe Bibliotheken die im gleichen Umfang im Internet zur Verfügung stehen (z. B. opencv)
  21. Vermeiden Sie in Ordnerbezeichnungen und Dateiennamen Sonderzeichen, Freizeichen und Umlaute (z. B. Uebung_1_2).
  22. Cleanup wird benötigt, wenn Fehler aufgetreten sind bei einem Commit oder Update.
    1. Cleanup sollte im Obersten Ornder verwendet werden.
    2. In den meisten Fällen sollte "Clean up working copy status" und "Refresh shell overlays" genügen.
    3. Genaue Befehl Beschreibung ist hier aufzufinden [1]
    4. 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:

  1. Rechtsklick auf die Datei - Tortoise SVN - Sperre holen >> Datei ist entsperrt, d. h. veränderbar (Schreibschutz aufgehoben)
  2. Datei ändern und speichern
  3. Beim Übertragen per Rechtsklick auf die Datei - Tortoise SVN - Übertragen ist die Datei wieder gesperrt.
  4. 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?

  1. Sie haben einen SW-Stand zu dem Sie zurückkehren möchten.
  2. Übertragen Sie zusammenhängenden Dateien in einer Operation. Nutzen Sie eine Nachricht (engl. Message) für alle Dateien.
  3. Übertragen Sie Daten als Backup.
  4. Übertragen Sie Daten von einem Arbeitsrechner, um diese 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 ( ) [ ] { } ? ! $ % & / = * + ~ , . ; : < > - _

Keine Zugriffsrechte

Wenn Sie auf Ihren Ordner auf einem Hochschulrechner keine Zugriffsrechte habe, obwohl diese eingerichtet wurden, kann es sein, das eine Vorgängerin das Password gespeichert hat.

Mit nachfolgenden Schritten löschen Sie das hinterlegte Passwort:

  • Tortoise SVN > Settings
  • Saved Data > Authentification data > Clear all

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)

Einführungsvideo

Video Kurzeinführung

Hinweis: Für die Ansicht dieses privaten Videos ist eine Anmeldung bei YouTube erforderlich.

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 unter dem Reiter "Literatur und Fachdatenbanken".

Umgang mit Visual Studio 2019

Daten, die beim Build-Prozess entstehen haben, wie oben beschrieben, keinen Nutzen in einer Versionskontrolle. Dieser Artikel beschreibt, welche Daten dies für Visual Studio 2019 beispielsweise sind.

Weblinks

Versionskontrolle mit Git und SVN

Literatur

→ zurück zum Hauptartikel: Praktikum SDE