Musste damit umgehen. Ich benutze gehostete Subversion und habe einen Dump gemacht und dann importiert. Der Importvorgang hat die UUID nicht vom alten auf das neue Repo übertragen, sodass ich den gleichen Fehler wie beim OP erhalten habe. Alle Antworten auf den Stack Exchange-Sites zeigen Ihnen nur, wie Sie mit "svnadmin setuuid" damit umgehen können. Dies war jedoch keine Option für mich, da ich einen gehosteten Dienst verwende (und daher svnadmin keinen Zugriff auf das Repository hat ). Ich hätte ein Ticket eingeben können, wollte mich aber nicht mit dem Warten befassen. So habe ich es behoben, indem ich die UUID meiner Arbeitskopie manuell aktualisiert habe :
Warnung: Versuchen Sie dies nur, wenn Sie sicher sind, dass die Arbeitskopie und das Repository, auf das Sie erneut verweisen, absolut synchron sind. Ich bin mir nicht sicher, was passieren wird, wenn sie es nicht sind.
Der Prozess besteht im Wesentlichen darin, die alte UUID durch eine neue UUID in den Dateien mit dem Namen "Einträge" in den versteckten SVN-Ordnern (Ordner mit dem Namen .svn oder _svn) Ihrer Arbeitskopie zu ersetzen. Sobald dies erledigt ist, können Sie TortoiseSVNs "relocate" verwenden, um das Arbeitsverzeichnis auf die neue Repository-URL zu verweisen.
CD im Konsolenfenster im Stammverzeichnis Ihres Arbeitsordners.
Führen Sie den Befehl aus, um das Attribut "Nur Lesen" rekursiv aus den Dateien "Einträge" zu entfernen: attrib -R entries /S
Verwenden Sie die Funktion "In Dateien ersetzen" eines Texteditors, um die alte UUID durch die neue UUID zu ersetzen. Ich habe Visual Studio mit den folgenden Einstellungen verwendet: Suchen in: PATH_TO_WORKING_FOLDER_ROOT / Unterordner einschließen: aktiviert / Diese Dateitypen anzeigen: Einträge
Schritt 2 rückgängig machen: attrib +R entries /S
Arbeitskopie "Verschieben" in neue URL. Ich habe TortoiseSVN verwendet: Klicken Sie mit der rechten Maustaste auf den Arbeitsordner TortoiseSVN-> Verschieben.
Alles, was Schritt 5 tut, ist, die URLs in den "Eintritts" -Dateien zu ersetzen, so dass Sie dies möglicherweise manuell tun können, wenn Sie möchten. Auch mit dem Kommandozeilen-Tool "svn" möglich, aber ich kenne den Befehl nicht genau.
Das ist intensiv. Ist das wirklich notwendig? Ich versuche nur, es herauszufinden, da mein Provider anscheinend unsere Repos verschoben hat und ich den gleichen Fehler erhalte.
Bis zum
0
Sie können die UUID für ein leeres Repository festlegen. Importieren Sie dann die Dateien, die Sie haben. Sie verlieren Ihren Verlauf (er wird nicht in der Arbeitskopie aufbewahrt). Indem Sie die UUID so einstellen, dass sie mit Ihrem alten Repository übereinstimmt, vermeiden Sie die Fehlermeldung auf dem svn-Switch.
$ svnlook uuid /var/svn/repos
cf1b8d31-acb6-02dc-bc7c-16e92ce6dbec
$ svnadmin setuuid /var/svn/repos # generate a new UUID
$ svnlook uuid /var/svn/repos
4c2c49fe-acc1-23dc-acbc-2b28ff0c9e6c
$ svnadmin setuuid /var/svn/repos 1c604742-6b16-462b-86e4-cc8bce959242 # restore the old UUID
$ svnlook uuid /var/svn/repos 1c604742-6b16-462b-86e4-cc8bce959242
Meine Serverversion von svnadmin hatte keinen Unterbefehl setuuid. Vermutlich handelt es sich um einen neueren Befehl. dann fand ich eine Datei db / uuid im Repository, aber nachdem ich die Nummer darin geändert hatte, beschwerte sich svn immer noch, dass es nicht dasselbe Repository ist
Pavel K.
0
Ich hatte das gleiche Problem, aber da wir eine gehostete Option verwenden, konnte ich es auch nicht svnadmin.
Dies war ein externes Projekt, das ich in einem anderen Projekt verwendet habe, und ich habe dies getan, um es zu beheben:
Sichern Sie alle meine lokalen Änderungen.
rm -rf das Verzeichnis (das externe wird eingecheckt)
Sie können die UUID für ein leeres Repository festlegen. Importieren Sie dann die Dateien, die Sie haben. Sie verlieren Ihren Verlauf (er wird nicht in der Arbeitskopie aufbewahrt). Indem Sie die UUID so einstellen, dass sie mit Ihrem alten Repository übereinstimmt, vermeiden Sie die Fehlermeldung auf dem svn-Switch.
quelle
Ich hatte das gleiche Problem, aber da wir eine gehostete Option verwenden, konnte ich es auch nicht
svnadmin
.Dies war ein externes Projekt, das ich in einem anderen Projekt verwendet habe, und ich habe dies getan, um es zu beheben:
rm -rf
das Verzeichnis (das externe wird eingecheckt)svn:external
(und das festschreiben)svn up
svn:external
nochmal hinzuquelle