SVN-Versionen inkonsistent

SVN-Versionen inkonsistent

Ich habe Arbeitskopien desselben Repositorys auf zwei verschiedenen Computern (Macs). Es gibt eine fragliche Datei (sagen wir SomeFile.m), die in beiden Arbeitskopien als r703 angezeigt wird, ohne lokale Änderungen. Wenn ich dies svn update SomeFile.mauf beiden Seiten mache, werden keine Updates durchgeführt - es wird angenommen, dass es mit dem Repository auf dem neuesten Stand ist.

Die beiden Dateien sind jedoch unterschiedlich. Sie haben unterschiedliche Prüfsummen und ein Diff zeigt Unterschiede, die für den Code wichtig sind. Die Datei ist in einer der Arbeitskopien korrekt, in der anderen jedoch nicht.

Erstens: Wie erzwinge ich, dass die falsche Datei durch das ersetzt wird, was sich im Repository befindet?

Und zweitens: Wie ist die Datei überhaupt in diesen Zustand geraten? Durch falsche Konfliktlösung oder etwas in der Art?

Antwort1

Wenn eine Dateiversion korrekt ist, Sie aber vermuten, dass die Version im Repository falsch ist, lesen SieWie kann ich Subversion zwingen, eine unveränderte Datei festzuschreiben?

Wenn Sie einen Abruf der Dateien aus dem Repository erzwingen möchten, lesen SieErzwingen Sie einen SVN-Checkout-Befehl, um aktuelle Dateien zu überschreiben.

Andernfalls ändern Sie einfach eine der Dateien, speichern Sie sie als neue Revision im Repository und checken Sie sie wie oben beschrieben auf dem anderen Computer erneut aus.

Antwort2

Der einfachste Weg, das Auschecken/Aktualisieren einer bestimmten Datei zu "erzwingen", ist das Löschen dieser Datei in der Arbeitskopie - Dateisystem löschen.nicht svn-delete- und führen Sie ein Update der Arbeitskopie aus. Die Datei wird mit der Version aus dem Repo wiederhergestellt.

Dieser Zustand der Datei könnte beispielsweise dadurch entstanden sein, dass unbemerkt lokale Änderungen vorgenommen wurden. SVN überträgt die Datei nicht ohne Konfliktlösung und sie bliebe auch ohne Aktualisierung.

verwandte Informationen