ins wiki
git-svn-id: https://svn.neo-layout.org@973 b9310e46-f624-0410-8ea1-cfbb3a30dc96
This commit is contained in:
parent
993b0402a8
commit
ac56d212ea
1 changed files with 1 additions and 117 deletions
|
@ -1,118 +1,2 @@
|
|||
------------------------------------------------------------------------------
|
||||
Diese Datei beschreibt den Umgang mit dem Subversion Kommandozeilenclient.
|
||||
------------------------------------------------------------------------------
|
||||
Gliederung
|
||||
1. Voraussetzung
|
||||
1.1 Welche Software brauche ich?
|
||||
1.2 Dateien im SVN ändern
|
||||
1.3 Terminologie
|
||||
2. Verschiedene Arbeitsabläufe (Was will ich machen?)
|
||||
2.1 Das Repository lokal auf meinem Rechner haben
|
||||
2.2 Das Repository auf meinem Rechner auf den neuesten Stand bringen
|
||||
2.3 Dateien im Repository ändern
|
||||
2.4 Dem Repository neue Dateien hinzufügen
|
||||
2.5 Dateien im Repository umbenennen
|
||||
2.6 Dateien aus dem Repository löschen
|
||||
2.7 Änderungen ins Repository hochladen
|
||||
3. Ratschläge / »best practice SVN usage«
|
||||
------------------------------------------------------------------------------
|
||||
1. Voraussetzung
|
||||
------------------------------------------------------------------------------
|
||||
1.1 Welche Software brauche ich?
|
||||
|
||||
Benötigt wird das Programm subversion für die Kommandozeile:
|
||||
Download: http://svn.tigris.org
|
||||
|
||||
Alternativ liegt für Windows auch ein komfortabler SVN-Client vor, der sich in die normale Dateiverwaltung integriert:
|
||||
http://www.tortoisesvn.net/
|
||||
|
||||
Die weiteren Erläuterung beziehen sich auf den Kommandozeilen-Client, können aber sinngemäß auf einen graphischen Client übertragen werden.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
1.2 Dateien im SVN ändern
|
||||
|
||||
Will man auch Dateien im Repostiory ändern, braucht man einen Schreibzugang mit Namen und Passwort.
|
||||
? Ben fragen!
|
||||
Wenn es voraussichtlich bei einer einzigen Änderung bleiben wird, kann alternativ auch auf der Mailingliste Unterstützung für ein einmaliges »Einchecken« erbeten werden.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
1.3 Terminologie
|
||||
|
||||
$REPOSITORY_HOME – Das Verzeichnis in dem das ausgecheckte Repository liegt
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2. Was will ich machen?
|
||||
------------------------------------------------------------------------------
|
||||
2.1 Das Repository lokal auf meinem Rechner haben
|
||||
|
||||
Angenommen ich möchte Neo in das Verzeichnis »$VERZEICHNIS/$NEO« runterladen:
|
||||
|
||||
cd $VERZEICHNIS
|
||||
svn checkout https://neo.eigenheimstrasse.de/svn $NEO
|
||||
|
||||
$REPOSITORY_HOME ist dann $VERZEICHNIS/$NEO
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.2 Das Repository auf meinem Rechner auf den neuesten Stand bringen
|
||||
|
||||
cd $REPOSITORY_HOME
|
||||
svn update
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.3 Dateien im Repository ändern
|
||||
|
||||
Einfach die Datei ändern und weiter geht’s mit Abschnitt 2.7.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.4 Dem Repository neue Dateien hinzufügen
|
||||
|
||||
Nachdem man die Datei in der lokalen Repositorykopie erstellt hat:
|
||||
svn add $DATEI
|
||||
weiter mit Abschnitt 2.7
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.5 Dateien im Repository umbenennen
|
||||
|
||||
svn mv $DATEI_ALT $DATEI_NEU
|
||||
weiter mit Abschnitt 2.7
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.6 Dateien aus dem Repository löschen
|
||||
|
||||
svn rm $DATEI
|
||||
weiter mit Abschnitt 2.7
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2.7 Änderungen ins Repository hochladen
|
||||
|
||||
cd $REPOSITORY_HOME
|
||||
svn commit -m "$ÄNDERUNGSBESCHREIBUNG" --username $USER
|
||||
|
||||
Wenn man das Repository mit seinem Nutzernamen ausgecheckt hat,
|
||||
kann »--username $USER« weggelassen werden.
|
||||
Statt auschecken wie in Abschnitt 2.1 beschrieben:
|
||||
cd $VERZEICHNIS_WO_NEO_REIN_SOLL
|
||||
svn checkout https://$USER@neo.eigenheimstrasse.de/svn neo
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
3. Ratschläge / »best practice«
|
||||
------------------------------------------------------------------------------
|
||||
In diesem Abschnitt geht es weniger um technische Fragen, sondern eher darum, wie man sinnvoll/empfohlenerweise mit einem SVN arbeiten sollte. Diese Ratschläge haben sich in der Praxis als sinnvoll erwiesen:
|
||||
|
||||
‣ Bevor man beginnt, die eigene SVN-Kopie zu bearbeiten, sollte immer erst ein Update durchgeführt werden (insbesondere, wenn das letzte Aus-checken schon länger her liegt). Dies vermeidet mögliche Konflikte.
|
||||
|
||||
‣ Es ist vorteilhaft, inhaltlich Zusammengehörendes auch gemeinsam zu committen, und Dinge, die voneinander unabhängig sind, auch einzeln einzuchecken.
|
||||
|
||||
‣ Die Änderungsbeschreibung sollte immer eingegeben werden und möglichst genau sein.
|
||||
|
||||
‣ Längere Änderungsbeschreibungen sollten mit einer kurzen Zusammenfassung der Form »[Adjektiv] Subjekt Prädikat: …« begonnen werden, etwa »Neues Feature: …«, »Caps-Lock-Fehler behoben: …«, »Dokumentation ergänzt: …«
|
||||
|
||||
‣ Inhaltliche (bzw. »programmiertechnische«) Änderungen (oder Fehlerkorrekturen) sollten unabhängig von ästhetischen Korrekturen (wie Einrückungen oder der Korrektur von Rechtschreibfehlern) eingecheckt werden. Mögliche Änderungsbeschreibungen wären etwa: [Revision 698:] »Doku erweitert: Wie man NEO auf dem C64 installieren kann«, [Revision 699:] »Formatierung korrigiert: Leere Zeilen entfernt, Einrückung angeglichen (r698)«
|
||||
|
||||
‣ Größere Commits können auch aufgeteilt werden, wenn die Intention dazu aus den Änderungsbeschreibungen hervor geht.
|
||||
|
||||
‣ Wenn man Angst um kostbare Änderungen durch einen Headcrash während einer intensiven Change-Session hat, muss man einen Branch für den Zeitraum der Änderungen eröffnen.
|
||||
|
||||
‣ Änderungen an der Referenz sollten unbedingt vorher auf der Mailingliste besprochen bzw. ausdiskutiert werden. Unwesentliche Änderungen sollten zumindestens auf der Liste erwähnt werden.
|
||||
------------------------------------------------------------------------------
|
||||
Siehe http://wiki.neo-layout.org/wiki/Subversion-Anleitung
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue