SVN-Export unter Ignorieren fehlender Dateien, wie?

SVN-Export unter Ignorieren fehlender Dateien, wie?

Ich habe eine große, alte Arbeitskopie des SVN-Repositorys, die ich vor langer Zeit ausgecheckt habe. Ich möchte sie exportieren und speichern und dabei die Verzeichnisstruktur beibehalten.

Im Laufe der Zeit habe ich die meisten Unterverzeichnisse und Dateien auf verschiedenen Ebenen als nicht mehr benötigt gelöscht. Den Rest möchte ich mit exportieren svn export.

Der Export wird jedoch aufgrund von Fehlern wie diesem abgebrochen:

svn: Can't stat 'WSN/Somedir': No such file or directory

Ich möchte dies svn updateaus folgenden Gründen vermeiden:

  • Das Repository ist alt und wird nicht mehr bedient
  • Selbst wenn es online wäre, würden die fehlenden Verzeichnisse viele Gigabyte groß sein, und ich möchte weder Zeit noch Speicherplatz für das Herunterladen aufwenden.

Eine mir bekannte Lösung besteht darin, den gesamten Baum zu kopieren und einen rekursiven Löschbefehl auszuführen, der alle „.svn“-Verzeichnisse entfernt.

Gibt es jedoch eine sauberere Möglichkeit, svnden Export anzufordern, bei der fehlende Dateien und Verzeichnisse ignoriert werden?

Antwort1

Wenn Sie ausführen svn status, erhalten Sie eine Liste der fehlenden Assets. Diese werden durch die !Zeichen angezeigt; z. B.:

$ svn status
?       default.cfg
!       models

In diesem Beispiel modelswurde der Ordner gelöscht und ist daher mit einem gekennzeichnet !.

Um dies zu beheben, müssen Sie diese fehlenden Ordner mit löschen svn rm; im Beispiel wäre das:

$ svn rm models
D         models
D         models/model1.png
D         models/model2.png

Anschließend committen und der Export sollte danach klappen.

Antwort2

Oder Sie können nur dieses Unterverzeichnis zurücksetzen. Wechseln Sie dazu in das Verzeichnis, das Sie zurücksetzen möchten, damit Sie nicht das Falsche zurücksetzen. Geben Sie dann Folgendes ein:

svn revert -R.

Jetzt können Sie nach Belieben aktualisieren und exportieren.

verwandte Informationen