Unterschiede zwischen den Revisionen 4 und 5
Revision 4 vom 2006-03-16 19:44:08
Größe: 1369
Autor: anonym
Kommentar: kommando hat sich wohl geaendert
Revision 5 vom 2006-06-13 00:24:00
Größe: 2335
Autor: anonym
Kommentar: svns mergen
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 36: Zeile 36:

----
= zwei Repositories vereinen =
Es gibt zwei Repositories (REPO1 und REPO2). Beide sollen zu einem zusammen gebracht werden, inklusive Versionierung.
Das geht so (im svn Server ausführen):
{{{svnadmin dump REPO1/ > /tmp/repo1.dump
svnadmin load REPO2/ < /tmp/repo1.dump
}}}
Dabei werden sämtliche Änderungen von REPO1 nochmal in REPO2 ausgeführt. Die Versionsnummern von REPO1 verschieben sich dadurch natürlich um die Anzahl der vorherigen Versionen in REPO2.
Alternativ kann REPO1 auch in ein Unterverzeichnis von REPO2 eingebracht werden z.B. wenn es sich um Zweige mit gleichen Dateien handelt. Dazu muss in einer Arbeitskopie von REPO2 ein neues Unterverzeichnis angelegt und commited werden.
{{{ svn co http://...REPO2 .
svn mkdir NEUESREPO1VERZ
svn commit
}}}
Anschließend die Dumpdatei in das Verzeichnis schieben:
{{{svnadmin dump REPO1/ > /tmp/repo1.dump
svnadmin load REPO2/ --parent-dir NEUESREPO1VERZ < /tmp/repo1.dump
}}}

TableOfContents


Verzeichnisstruktur

Alle Repositories liegen auf dem FaxeSubversion-Server unter dem Verzeichnis /data/repos/.

Der Name des Unterverzeichnisses spiegelt direkt den Teil der Repository-URL wieder, der auf https://svn.systemausfall.org/svn/ folgt.

Die Konfigurationsdateien liegen unter /data/etc/ - sie sind größtenteils nach /etc/ verlinkt.

Zugriffsrechte

Die Zugriffsrechte können für Repositories oder auch für einzelne Verzeichnisse vergeben werden.

Standardmäßig sind alle Repositories anonym lesbar.

Die Rechte sind in der Datei [wiki:SubVersion/sao/etc/svn/svn-access.conf /data/etc/svn-access.conf] im svn-UML einstellbar.


Das Admin-Skript

Das Skript [wiki:SubVersion/sao/scripts/erzeuge_svn_repos.sh /data/scripts/erzeuge_svn_repos.sh] stellt folgende Funktionen zur Verfügung:

  • ein Repository mit Benachrichtigungsliste anlegen
  • ein Repository ohne Benachrichtigungsliste anlegen

Das Skript ist äußerst simpel.

Syntax-Beispiele

{{{erzeuge_svn_repos.sh --mit-liste REPOSNAME erzeuge_svn_repos.sh --ohne-liste REPOSNAME}}}

Mailingliste

Die Mailinglisten haben jeweils die Adresse svn-REPOSNAME@lists.systemausfall.org.

Die Einschreibung erfolgt also mit einer Mail an svn-REPOSNAME-subscribe@lists.systemausfall.org.


zwei Repositories vereinen

Es gibt zwei Repositories (REPO1 und REPO2). Beide sollen zu einem zusammen gebracht werden, inklusive Versionierung. Das geht so (im svn Server ausführen): {{{svnadmin dump REPO1/ > /tmp/repo1.dump svnadmin load REPO2/ < /tmp/repo1.dump }}} Dabei werden sämtliche Änderungen von REPO1 nochmal in REPO2 ausgeführt. Die Versionsnummern von REPO1 verschieben sich dadurch natürlich um die Anzahl der vorherigen Versionen in REPO2. Alternativ kann REPO1 auch in ein Unterverzeichnis von REPO2 eingebracht werden z.B. wenn es sich um Zweige mit gleichen Dateien handelt. Dazu muss in einer Arbeitskopie von REPO2 ein neues Unterverzeichnis angelegt und commited werden. {{{ svn co http://...REPO2 . svn mkdir NEUESREPO1VERZ svn commit }}} Anschließend die Dumpdatei in das Verzeichnis schieben: {{{svnadmin dump REPO1/ > /tmp/repo1.dump svnadmin load REPO2/ --parent-dir NEUESREPO1VERZ < /tmp/repo1.dump }}}

SubversionVerwaltung (zuletzt geändert am 2012-06-13 21:26:24 durch anonym)


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.