Arbeitskopie des SVN-Upgrades


133

Ich kann kein SVN-Commit durchführen. Ich erhalte diesen Fehler:

org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)

Wie kann es behoben werden?

Antworten:


154

Sie müssen Ihren Subversion-Client auf mindestens 1.7 aktualisieren.

Mit dem Befehlszeilenclient müssen Sie Ihr Arbeitskopienformat manuell aktualisieren, indem Sie den folgenden Befehl eingeben svn upgrade:

Aktualisieren der Arbeitskopie

Subversion 1.7 führt wesentliche Änderungen am Format der Arbeitskopie ein. In früheren Versionen von Subversion hat Subversion die Arbeitskopie automatisch auf das neue Format aktualisiert, wenn ein Schreibvorgang ausgeführt wurde. Subversion 1.7 macht dies jedoch zu einem manuellen Schritt. Bevor Sie Subversion 1.7 mit Ihren Arbeitskopien verwenden können, müssen Benutzer einen neuen Befehl ausführen, svn upgradeum die Metadaten auf das neue Format zu aktualisieren. Dieser Befehl kann eine Weile dauern, und für einige Benutzer ist es möglicherweise praktischer, einfach eine neue Arbeitskopie auszuchecken.
- Versionshinweise zu Subversion 1.7

TortoiseSVN führt das Upgrade der Arbeitskopie beim nächsten Schreibvorgang durch:

Aktualisieren der Arbeitskopie

Subversion 1.7 führt wesentliche Änderungen am Format der Arbeitskopie ein. In früheren Versionen hat Subversion die Arbeitskopie automatisch auf das neue Format aktualisiert, wenn ein Schreibvorgang ausgeführt wurde. Subversion 1.7 macht dies jedoch zu einem manuellen Schritt.

Bevor Sie eine vorhandene Arbeitskopie mit TortoiseSVN 1.7 verwenden können, müssen Sie zuerst das Format aktualisieren. Wenn Sie mit der rechten Maustaste auf eine alte Arbeitskopie klicken, zeigt TortoiseSVN nur einen Befehl im Kontextmenü an: Arbeitskopie aktualisieren.
- TortoiseSVN 1.7 Versionshinweise


2
Wenn ich den Befehl svn upgrade
erteile,

@geneorama: hast du svninstalliert? ( sudo apt-get install svn)
Knittl

5
Danke für die Antwort! Ich hatte svn installiert (Subversion), aber es war Version 1.6, die den upgradeBefehl nicht hat . Ubuntu 12.04 würde 1.7 nicht installieren, ohne einen neuen ppa hinzuzufügen. askubuntu.com/questions/65468/…
geneorama

@genorama Hier finden Sie Anweisungen zum Aktualisieren von svn für Mac OS, die ab 1.6 redfinsolutions.com/blog/update-subversion-mac-os-x funktionieren . Für Linux stelle ich mir das ähnlich vor.
Mike Eng

1
"Dieser Befehl kann eine Weile dauern, und für einige Benutzer ist es möglicherweise praktischer, einfach eine neue Arbeitskopie auszuchecken." Ich führe den Befehl aus und weiß nicht, was mich erwartet. Nach 2 Sekunden antwortet die Konsole mit einem aktualisierten '.' : P
Rabidmachine9

57

In Eclipse können Sie im Projekt auswählen, mit der rechten Maustaste auf> Team-> Upgrade klicken


Upgrade-Option konnte nicht gefunden werden
Amit Thaper

6

Unter MacOS:

  1. Holen Sie sich die neuesten kompilierte SVN - Client - Binärdateien von hier .
  2. Installieren.
  3. Fügen Sie dem Pfad Binärdateien hinzu (im letzten Installationsbildschirm wird erläutert, wie).
  4. Öffnen Sie das Terminal und führen Sie den folgenden Befehl in Ihrem Projektverzeichnis aus:

    SVN-Upgrade


3

Wenn Sie gerade auf Ihrem Computer ein Upgrade auf SVN 1.7 durchgeführt haben (wie ich es gerade getan habe) und viele Projekte in Ihrem Eclipse-Arbeitsbereich haben, die aktualisiert werden müssen, können Sie in einem Terminalfenster auf Unix-baesd-Systemen Folgendes tun:

cd [eclipse/workspace] # <- you supply the actual path here

for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;

Nachdem ich ein bisschen gegoogelt hatte, fand ich heraus, was für Windows-Benutzer gleichwertig zu sein scheint:

http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html

Siehe die Antwort von Alexey Shcherbak auf der Hälfte der Seite.


2

Aufgrund dieses Problems versuchen Sie, ein Projekt zu kompilieren, das die Dateien von OLder SVN enthält, als Sie derzeit verwenden.

Sie haben zwei Lösungen, um dieses Problem zu beheben

  1. Installieren des SVN der Version 1.6, um mit den SVN-Projektdateien kompatibel zu sein
  2. Versuchen Sie, das Projekt zu aktualisieren. (funktioniert nicht immer).

2

Sie können auch seltsame Meldungen über die Notwendigkeit erhalten, Ihre Arbeitskopie zu aktualisieren, wenn andere Arbeitskopien in Ihrer verschachtelt sind. Ich hatte dieses Problem mit einem Symphony-Projekt, bei dem einige Framework-Ordner als Arbeitskopie verwendet wurden und die vermutlich vor ihrer Veröffentlichung nicht ordnungsgemäß bereinigt wurden.

In diesem Fall führen Sie einfach eine Dateisuche durch .svnund löschen Sie die .svnOrdner, die Sie nicht möchten (löschen Sie Ihre natürlich nicht im Stammverzeichnis).


1

Nach dem Upgrade auf die neueste Version von Tortoise-SVN musste ich zuerst ein "Upgrade" durchführen (im Gegensatz zu "Update"!).


1

Wenn Sie diesen Fehler von Netbeans (7.2+) erhalten, bedeutet dies, dass Ihre separat installierte Version von Subversion höher ist als die Version in Netbeans. In meinem Fall hatte Netbeans (v7.3.1) SVN v1.7 und ich hatte gerade mein SVN auf v1.8 aktualisiert.

Wenn Sie nachsehen Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane), setzen Sie den Preferred Client = CLI , dann können Sie den Pfad der installierten SVN festlegen, die für mich war C:\Program Files\TortoiseSVN\bin.

Weitere Informationen finden Sie in den häufig gestellten Fragen zu Netbeans Subversion Clients .


1

Mit AnkhSVN in Visual Studio gibt es auch eine Option "Upgrade Working Copy" im Kontextmenü für die Lösung im Projektmappen-Explorer (falls zutreffend).


0

Sie können auf Subversion 1.7 aktualisieren. Um auf Subversion 1.7 zu aktualisieren, müssen Sie ein vorhandenes Projekt in Xcode 5 oder höher starten. Dies führt zu einer Warnung ' The working copy ProjectName should be upgraded to Subversion 1.7' (siehe Abbildung unten).

Screenshot zur Warnung

Sie sollten die UpgradeSchaltfläche ' ' auswählen, um ein Upgrade auf Subversion 1.7 durchzuführen. Dies wird einige Zeit dauern.

Wenn Sie Terminal verwenden , können Sie ein Upgrade auf Subversion 1.7 durchführen, indem Sie den folgenden Befehl in Ihrem Projektverzeichnis ausführen : svn upgrade

Beachten Sie, dass, sobald Sie haben upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.

Weitere Informationen finden Sie in den Apple-Dokumenten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.