2009-05-15 6 views
5

Ich würde gerne wissen, ob es eine einfache Möglichkeit gibt, ein Subversion-Repository zu duplizieren, ohne Zugriff auf das Dateisystem zu haben. Das bedeutet, dass ich nur Lesezugriff auf die HTTP-Schnittstelle habe.Wie du ein Subversion Repo ohne Dateisystemzugriff duplizieren?

Grundsätzlich möchte ich meine eigene lokal gehostete Kopie eines Repositorys für ein Open-Source-Projekt haben. Sie bieten wie üblich einen anonymen Zugriff auf das Subversion-Repo.

Ich habe die Dokumente durchgesehen, und ich denke, mein Google-Fu ist gut genug, weil ich keinen Hinweis darauf finden konnte, so etwas zu tun.

Also im Grunde möchte ich alle Revisionen herunterladen und in der Lage sein, sie mit svnadmin in mein eigenes Repo zu importieren.

Antwort

8

Ich glaube, Sie wollen svnsync:

svnadmin create /localsvn 
svnsync init file:///localsvn http://domain/svn 
svnsync sync file:///localsvn 

Sie werden den pre-revprop-change Haken in Ihrem lokalen Repository oder svnsync beschweren ermöglichen müssen.

Aber wiederholen Sie einfach den letzten Befehl wie nötig.

Beachten Sie, dass svnsync Befehle URL-Argumente erfordern.

+0

Es ist erwähnenswert, dass svnsync nur die notwendigen Änderungen ergreift, um Ihr Repository auf den neuesten Stand zu bringen, ist also ziemlich effizient. Sie dürfen das lokale Repository auch nicht selbst ändern - verwenden Sie einfach svnsync. –

+0

Ah, das ist sehr hilfreich, danke Jonathan. Leider regt mich das Repo für einen Benutzernamen und ein Passwort auf, obwohl es anonyme Checkouts erlaubt. Also muss ich warten, bis der Admin mir helfen kann. Ich kann in einige dieser Konvertierungstools schauen, um ein Projekt auch in ein anderes VCS zu exportieren. Ich konnte einfach nichts für svn -> svn finden. –

+0

Es stellt sich heraus, dass Mercurial mehrere Werkzeuge in dieser Richtung hat, einschließlich etwas eingebaut sowie Hgsvn. –

Verwandte Themen