2012-04-12 14 views
0

Jedes Mal, wenn ich versuche, meinen Code aus dem Repository ich dieSVN-Datenbank Korruption

Nachricht

Datei kann nicht geöffnet 'E: \ Repositorys \ Main \ db \ unaufhaltsame \ 7 \ 7805': get zu aktualisieren Das System kann die angegebene Datei nicht finden.

Wenn ich versuche, eine saubere Kasse zu tun es für eine Weile funktioniert und dann erhalte ich die Fehler

REPORT von ‚/ svn/Main/svn/me!‘: Kann nicht Chunkgröße lesen . Sichere Verbindung abgeschnitten

Seltsamer kann ich immer noch nicht in Anspruch

am db \ Blick unaufhaltsamen \ 7 Ordner gibt es definitiv einige Dateien fehlen. \ 6 hatte alle von 6000 bis 6999. Aber in \ 7 gibt es 7804 & 7806, aber keine 7805. Es gibt ein paar andere fehlen.

Können diese Daten neu erstellt werden? Ich bin mir ziemlich sicher, dass ich in der Lage sein sollte, alle außer ein paar kürzlichen Check-Ins zu bekommen, aber ich würde viel lieber keinen Datenverlust bevorzugen.

EDIT: Sollte auch beachten, dass ich vor kurzem ein paar große Binärdateien in das Repository überprüft. Behandelt SVN ihren Speicher auf andere Weise?

Antwort

0

Schwer zu sagen, warum Sie sehen, was Sie sehen, aber ich würde vorschlagen, zuerst Ihre Festplatte zu überprüfen. Überprüfen Sie auch Ihr Antivirenprotokoll.

+0

Nichts in meinem Antivirenprotokoll, es wurde nicht unter Quarantäne gestellt, keine Berichte von irgendeinem Virus (und ich würde denken, wenn es ein Virus wäre, wären die gelöschten Dateien mehr als nur sehr neu, aber nicht alle, Checkins). Die ganze Sache schreit mir zu. –

+1

Ok. Wie greifen Sie auf Ihr Repository zu? Hast du 'svnadmin verify' darauf versucht? Http://stackoverflow.com/questions/5450825/could-not-read-chunk-size-error-in-svn vielleicht verwandt. –

+2

SVN Verify überprüft die große Mehrheit, kann aber die Dateien am Ende nicht finden. Strangly svnadmin erholen sucht nach ein paar hundert Revisionen Vergangenheit, wo wir jemals zu bekommen. Ich denke, die beste Lösung ist es, das Repository wiederherzustellen, das verifiziert wurde, und dann unsere lokalen Kopien zu verwenden, um alles erneut zu überprüfen, was seitdem passiert ist –