SVN repository mirror

svnsync használata

Ha bármilyen okból úgy érezzük, hogy a subversion repository-ról kell egy tükör (mirror), akkor ez könnyen megoldható az svnsync parancs segítségével.

Adott egy subversion tároló, legyen svn://already.exist/myrepo. Ezt szeretnénk tükrözni (mirror), legyen svn://mirror.server/myrepo.

Ehhez először létre kell hozni a mirror.server-en a megfelelő myrepo-t:

cd mirror.server/svn-repos/
svnadmin create myrepo
echo "#!/bin/sh" > myrepo/hooks/pre-revprop-change
chmod +x myrepo/hooks/pre-revprop-change

Ezután az svnsync parancs segítségével inicializálni kell:

svnsync init --allow-non-empty svn://mirror.server/myrepo svn://already.exist/myrepo

A szinkronizálás pedig a következő paranccsal történik:

svnsync sync svn://mirror.server/myrepo

Érdemes a hozzáférést a mirror-hoz korlátozni, hiszen ha véletlenül a mirror-ba commit-olunk, akkor a tükrözést ezzel elrontjuk (hiszen a kiindulási repository-ban ez a commit nincs benne). Ennek lehetőségei: