Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Both sides previous revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
software:apache:subversion [2012/12/09 21:56] khopf |
software:apache:subversion [2013/11/05 11:10] (aktuell) khopf Überarbeitung |
||
---|---|---|---|
Zeile 21: | Zeile 21: | ||
In einem Verzeichnis, das nicht das Document Root-Verzeichnis des Webservers ist, kann dann angelegt werden (z.B. /srv/svn/repo1). Mittels | In einem Verzeichnis, das nicht das Document Root-Verzeichnis des Webservers ist, kann dann angelegt werden (z.B. /srv/svn/repo1). Mittels | ||
- | /srv/svn/# svnadmin create nameDesRepositories | + | <code bash> |
+ | svnadmin create [nameDesRepositories] | ||
+ | </code> | ||
Wird dann ein Repository erzeugt. Um das Verzeichnis auch aus dem Internet erreichbar zu machen, muss man den Dateibesitz zu ''www-data:www--data'' ändern und dem Webserver ggf. Schreibrechte geben. | Wird dann ein Repository erzeugt. Um das Verzeichnis auch aus dem Internet erreichbar zu machen, muss man den Dateibesitz zu ''www-data:www--data'' ändern und dem Webserver ggf. Schreibrechte geben. | ||
Zeile 32: | Zeile 34: | ||
Für einen SVN-Zugang muss **kein** Benutzer auf der Ubuntu-Maschine angelegt werden, sondern nur in der Datei unter | Für einen SVN-Zugang muss **kein** Benutzer auf der Ubuntu-Maschine angelegt werden, sondern nur in der Datei unter | ||
- | # /etc/apache2/dav_svn.authz | + | <code bash> |
+ | /etc/apache2/dav_svn.authz | ||
+ | </code> | ||
Dort werden anfangs Gruppen definiert, die als Berechtigte einem Repository zugeordnet werden können. Es ist zudem möglich, einzelne Benutzern bestimmte Rechte zu geben. | Dort werden anfangs Gruppen definiert, die als Berechtigte einem Repository zugeordnet werden können. Es ist zudem möglich, einzelne Benutzern bestimmte Rechte zu geben. | ||
Zeile 38: | Zeile 42: | ||
Schließlich muss das Password eines Nutzers angelegt/geändert werden mit | Schließlich muss das Password eines Nutzers angelegt/geändert werden mit | ||
- | # htpasswd -b dav_svn.passwd <NUTZER> | + | <code bash> |
+ | htpasswd -b dav_svn.passwd <NUTZER> | ||
+ | </code> | ||
| | ||
- | Das Passwordfile für SVN liegt bei uns unter | + | ===== Repositories Verwalten (''svnadmin'' Befehle) ===== |
- | **/etc/apache2/dav_svn.passwd** | + | |
- | ===== Repositories Verwalten ===== | + | |
- | ==== Repositories dumpen (incl. aller Revisionen) ==== | + | |
- | svnadmin dump /srv/svn/repo/ > ~/repo.dump | + | |
- | + | ||
- | ==== Repository Dump einspielen ==== | + | |
- | svnadmin load /srv/svn/neuesRepo/ < ~/repo.dump | + | |
- | + | ||
- | Ein Dump kann auch in ein anderes Repository eingespielt werden: | + | |
- | svnadmin load /srv/svn/neuesRepo/ --parent-dir /unterverzeichnis/ < ~/repo.dump | + | |
- | + | ||
- | Somit können Repositories auch zusammengefasst werden ((http://www.anrichter.net/2009/01/subversion-repositories-zusammenfassen/)) | + | |
+ | ^ Befehl ^ Beschreibung ^ Benutzung ^ | ||
+ | | create | Erstellt ein Repository | | | ||
+ | | dump | Exportiert ein Repository incl. aller Revisionen | | | ||
+ | | load | Importiert einen Dump als Repository | mittels ''--parent-dir'' kann ein Dump auch in ein anderes Repository integriert werden((Siehe auch: http://www.anrichter.net/2009/01/subversion-repositories-zusammenfassen/)) | | ||
===== Zugriff auf Repositories mit WebDAV und Autoversioning ===== | ===== Zugriff auf Repositories mit WebDAV und Autoversioning ===== | ||
http://www.oreillynet.com/pub/a/opensource/excerpts/9780596510336/webdav-and-autoversioning.html | http://www.oreillynet.com/pub/a/opensource/excerpts/9780596510336/webdav-and-autoversioning.html | ||
+ | |||
+ | ===== Sicherung und Wiederherstellung von Repositories ===== | ||
+ | |||
+ | ==== Sicherung und Wiederherstellung via dump ==== | ||
+ | |||
+ | Die Sicherung von SVN-Repositories geschiehst am Besten mit: | ||
+ | |||
+ | <code bash> | ||
+ | svnadmin dump [REPOSITORY] | gzip -9 > [DUMPFILE].tgz | ||
+ | </code> | ||
+ | |||
+ | Die Rücksicherung wird dann folgendermaßen aufgerufen((Quelle: http://de.saas-secure.com/svn-hosting/svn-dump-restore.html)): | ||
+ | |||
+ | <code bash> | ||
+ | gunzip -c [DUMPFILE].tgz | svnadmin load [REPOSITORY] | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ==== Wiederherstellung einer Hartkopie ==== | ||
+ | |||
+ | Liegt lediglich eine einfache Kopie der Verzeichnisstruktur vor, kann es ggf. zu Problemen kommen, da Datei-Sperren vorhanden sind oder die Datenbank inkonsistent ist. Hier bietet es sich an, folgende Pflegeläufe durchzuführen: | ||
+ | |||
+ | <code bash> | ||
+ | svnadmin recover [REPOSITORY]/ # zum Wiederherstellen der Datenbank | ||
+ | svnadmin verify [REPOSITORY]/ # konsistenzprüfung der einzelnen Revisionen | ||
+ | </code> | ||
{{tag>apache svn versionsverwaltung}} | {{tag>apache svn versionsverwaltung}} |
Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.