Hier stehen die wichtigsten Unix-Befehle, die man benötigt, um mit Subversion zu arbeiten. Als Beispiel dient das Accounting-Skript auf dem Druckserver gutenberg.
Voraussetzung ist eine lokale Instalation eines Subversion-Clients. Desweiteren gibt es auch eine Reihe weiterer graphischer Oberflächen zur Arbeit mit Subversion, auf die hier aber nicht eingegangen wird (Weitere Informationen unter http://subversion.tigris.org/).cd /wo/auch/immer/das/Zeug/hin/soll/
(z.B. cd ~user/tmp/)
svn checkout <URL> [PFAD]
(z.B: svn checkout https://svn.imp.fu-berlin.de/technix/beispiel/ bsplokal)
svn commit [LOCAL]
(z.B. svn commit -m "mein Kommentar" bsplokal/meinedatei.txt)
svn update
svn <BEFEHL> [ARGUMENTE]
BEFEHL | Erklärung |
---|---|
help |
zeigt eine Hilfe zu einem Befehl an, der als Argument gegeben ist |
info |
zeigt ein paar Infos zum Repository |
list |
zeigt vorhandene Verzeichnisse im Repository |
checkout |
holt Datei/Verzeichnis aus dem Repository |
commit |
schreibt Datei/Verzeichnis in das Repository |
update |
holt neueste Version aus dem Repository |
status |
zeigt Status (lokal verändert/up to date/needs merge …) |
diff |
zeigt Unterschied zwischen lokaler Version und Version im Repository |
mkdir |
erzeugt neues Verzeichnis im Repository (Bewirkt dasselbe wie ein lokales mkdir + commit) |
revert |
bringt die als Argument gegebene(n) Datei(en) wieder in den ursprünglichen Zustand |
AuthzSVNAccessFile
:
-----------------------------cut-------------------------------------------------- [groups] MyGroup = klaus@FU-BERLIN.DE, otto@FU-BERLIN.DE, emil@MI.FU-BERLIN.DE [/] * = user@FU-BERLIN.DE = r [/beispiel] user@FU-BERLIN.DE = rw @MyGroup = rw [/schreiben/stability] user@FU-BERLIN.DE = rw [/schreiben/stability/trunk] otto@FU-BERLIN.DE = rw ----------------------------cut----------------------------------------------------
Diese Beispieldatei ist für Kerberos-Auth gedacht.
Für Basic-Auth(d.h. LDAP oder FILE) mit htpasswd lässt man einfach die "@FU-BERLIN.DE" weg.
Das liegt unter einem dieser Plätze:/web/projects.mi.fu-berlin.de/htdocs/data/AuthzSVNAccessFile
/import/svn_auth/$NEW_REPOS
(auf allen linux-rechnern)
\\web\svn_auth\$NEW_REPOS
(auf windows-rechnern)
/import/svn_auth/$NEW_REPOS/AuthzSVNAccessFile
# wer darf was
/import/svn_auth/$NEW_REPOS/AuthUserFile
# externe user-namen und passworte
Bitte keine Kommentare verwenden, und natürlich nicht die beiden Zeilen mit ---cut--- mitkopieren.
Die MyGoup Zeile darf nicht umgebrochen werden d.h. sie besteht aus einer Zeile. Achtung, der User otto hat auf https://svn.imp.fu-berlin.de/$NEW_REPOS keinen Schreib-Zugriff, sondern nur unter https://svn.imp.fu-berlin.de/$NEW_REPOS/schreiben/stability/trunk Erster test z.B. mitsvn info <URL>
( z.B: svn info https://svn.imp.fu-berlin.de/technix)
Zweiter test mit
svn list <URL>
( z.B: svn list https://svn.imp.fu-berlin.de/technix)
cd /import/svn_auth/$NEW_REPOS
(auf allen linux-rechnern) \\web\svn_auth\$NEW_REPOS
htpasswd -c AuthUserFile otto
Fragt nach dem Passwort für otto und erstellt(create) die Passwortdatei mit dem Namen AuthUserFile. Diesen Befehl nur für den ersten User benutzen.
htpasswd AuthUserFile emil
Fragt nach dem Passwort für emil und fügt eine Zeile an die Datei AuthUserFile an. Diesen Befehl für alle weiteren User benutzen.