Subversion: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 24: | Zeile 24: | ||
=== Repository === | === Repository === | ||
Das ''Repository'' ist der zentrale Verzeichnisbaum, in dem sich alle unter Versionsverwaltung stehenden Dateien befinden. Das Repository kann alle Änderungen, die jemals an diesen Dateien oder Verzeichnissen vorgenommen wurden | Das ''Repository'' ist der zentrale Verzeichnisbaum, in dem sich alle unter [[Versionsverwaltung]] stehenden Dateien befinden. Das Repository kann alle Änderungen, die jemals an diesen Dateien oder Verzeichnissen vorgenommen wurden | ||
* nachvollziehen (d.h. angeben, welcher Autor welche Änderung durchgeführt hat), | * nachvollziehen (d.h. angeben, welcher Autor welche Änderung durchgeführt hat), | ||
* rückgängig machen. | * rückgängig machen. | ||
| Zeile 38: | Zeile 38: | ||
== Arbeiten mit Subversion == | == Arbeiten mit Subversion == | ||
Wir beschreiben hier kurz und sehr abstrakt die einzelnen Funktionen, die ein [[Subversion]]-Client generell zur Verfügung stellt. Die genaue Funktionsweise kann von Client zu Client abweichen. | |||
=== Projekt importieren === | === Projekt importieren === | ||
Mit ''Projekt importieren'' fügt man ein schon existierendes, nicht unter [[Versionsverwaltung]] stehendes, meist lokales, Verzeichnis zum [[#Repository|Repository]] hinzu. | |||
'''Achtung:''' Das lokale, hinzugefügte Verzeichnis wird dadurch NICHT zur [[#Working Copy|Working Copy]]. Will man mit diesem Verzeichnis weiter arbeiten, muss man das [[#Repository|Repository]] [[#Projekt auschecken|auschecken]]. | |||
=== Projekt auschecken === | === Projekt auschecken === | ||
Mit ''Projekt auschecken'' (<tt>SVN Checkout...</tt>) erzeugt man eine [[#Working Copy|Working Copy]] in einem lokalen, leeren Verzeichnis. Diese Funktion wird nur einmal im Leben einer [[#Working Copy|Working Copy]] verwendet. | |||
'''Achtung:''' Auf keinen Fall einen [[#Projekt auschecken|Checkout]] in ein Verzeichnis machen, das bereits unter [[Versionsverwaltung]] steht. | |||
=== Working Copy bearbeiten === | === Working Copy bearbeiten === | ||
Alle Dateien und Ordner in der [[#Working Copy|Working Copy]] können nahezu genauso bearbeitet werden, als wäre die [[#Working Copy|Working Copy]] ein normales Verzeichnis. Man kann Dateien und Verzeichnisse | |||
* neu anlegen | |||
* löschen | |||
* ändern | |||
* verschieben | |||
* umbenennen | |||
Manche Veränderungen der [[#Working Copy|Working Copy]] erfordern jedoch vor dem [[#Working Copy commiten|Commit]] eine explizite Mitteilung an die [[Versionsverwaltung]]. Wenn Dateien oder Verzeichnisse neu angelegt (<tt>Add...</tt>) oder gelöscht (<tt>Delete...</tt>) werden, kann das [[#Repository|Repository]] nicht entscheiden, wie es darauf reagieren soll. Neue Dateien müssen nicht zwangsweise unter [[Versionsverwaltung]] gestellt werden, auch wenn sie in einer [[#Working Copy|Working Copy]] liegen. Man könnte sie auch [[#Ignore|ignorieren]]. Gelöschte Dateien sollen nicht zwangsweise auch im [[#Repository|Repository]] gelöscht werden, sie könnten auch von dort wiederhergestellt (z.B. mit [[#Working Copy updaten|Update]]) werden. | |||
Noch größeren Aufwand benötigt das Umbenennen (<tt>Rename...</tt>) und das Verschieben von Dateien oder Verzeichnissen. Da zusätzliche Informationen mit einzelnen Dateien verknüpft sind, müssen diese Operationen vollständig durch den [[#Clients|Client]] getätigt werden. | |||
[[#AnkhSVN|AnkhSVN]] übernimmt diese Arbeiten (zu einem Großteil) für den Benutzer, während man in [[#TortoiseSVN|TortoiseSVN]] diese Mitteilungen manuell vor einem [[#Working Copy commiten|Commit]] machen muss. Zusätzlich unangenehm ist das Verschieben mit [[#TortoiseSVN|TortoiseSVN]], da man das nur direkt im [[#Repository|Repository]] durch den [[#Browse|Repository Browser]] machen kann. | |||
=== Working Copy updaten === | === Working Copy updaten === | ||
=== Working Copy commiten === | === Working Copy commiten === | ||
=== Revert === | === Revert === | ||
=== Ignore === | |||
=== Diff === | === Diff === | ||
=== Conflicts === | === Conflicts === | ||
