Ich habe versucht, eine Verzeichnisstruktur in Subversion von einem Speicherort an einen anderen zu verschieben, erhalte jedoch einen Item '*' is out of date
Festschreibungsfehler.
Ich habe die neueste Version ausgecheckt (soweit ich das beurteilen kann). svn st -u
Es werden keine anderen Unterschiede als die mv-Befehle angezeigt.
Antworten:
Ich bekomme das manchmal mit TortoiseSVN unter Windows. Die Lösung für mich ist
svn update
das Verzeichnis, obwohl es keine Revisionen zum Herunterladen oder Aktualisieren gibt. Es hat etwas mit den Metadaten zu tun, wodurch es auf magische Weise repariert wird.quelle
Nachdem Sie alle offensichtlichen Dinge und einige der anderen Vorschläge hier ohne jegliches Glück ausprobiert hatten, führte eine Google-Suche zu diesem Link (Link funktioniert nicht mehr) - Subversion sagt: Ihre Datei oder Ihr Verzeichnis ist wahrscheinlich veraltet
Kurz gesagt, der Trick besteht darin, in das Verzeichnis .svn (in dem Verzeichnis, das die fehlerhafte Datei enthält) zu wechseln und die Datei "all-wcprops" zu löschen .
Arbeitete für mich, als nichts anderes tat.
quelle
all-wcprops
Dateien im.sv
VerzeichnisIch glaube, dieses Problem kommt von der .svn-Datei. Es ist entweder falsch im alten Elternteil, im neuen Elternteil oder im alten. Ich würde versuchen, zu Ihrem Ausgangspunkt zurückzukehren. Verwenden Sie einen Export, um eine saubere Kopie des Ordners zu erhalten. Verschieben Sie die saubere Kopie an den neuen Speicherort und verwenden Sie Hinzufügen und Löschen, um die Verschiebung durchzuführen. Das macht manuell, was SVN macht, aber es könnte funktionieren.
quelle
Ich habe festgestellt, dass dies für mich funktioniert:
quelle
svn update
Ich habe für mich gearbeitet, ohne es vorher zu tun . Ich hatte ein Szenario, in dem ich Updates vermeiden wollte. (Es wurde versucht, die lokale Kopie zu aktualisieren und das betreffende Element zurückzusetzen, und es wurde weiterhin der Fehler "Veraltet" angezeigt. Dies funktionierte aus irgendeinem Grund:
quelle
Ich hatte gerade das gleiche Problem in mehreren Ordnern und dies ist, was ich getan habe, um zu begehen:
1) Klicken Sie in der Perspektive "Team Synchronize" mit der rechten Maustaste auf den Ordner> Override and Update.
2) Löschen Sie den Ordner erneut.
3) Commit and be happy
quelle
Vielen Dank. Das hat es gerade für mich gelöst. svn update --force / pfad zum dateinamen /
Wenn Ihre zuletzt verwendete Datei im lokalen Verzeichnis identisch ist, werden keine Eingabeaufforderungen angezeigt. Wenn die Datei anders ist, werden Sie zur Eingabe von tf, mf usw. aufgefordert. Wenn Sie mf (meine voll) auswählen, wird sichergestellt, dass nichts überschrieben wird und ich mich verpflichten kann, wenn Sie fertig sind.
Jay CompuMatter
quelle
Ich schaffe es, es zu lösen, indem ich einen Update-Button drücke
quelle
Wie @ Alexander-Klyubin vorschlägt, machen Sie den Umzug im Repository. Es wird auch viel schneller, insbesondere wenn Sie eine große Datenmenge verschieben müssen, da Sie nicht alle diese Daten erneut über das Netzwerk übertragen müssen.
sollte gut funktionieren
quelle
svn up; svn mv
Befehlsserie, und das hat den Trick gut gemacht. Vielen Dank.Entfernen Sie Ihre Datei oder Ihren Pfad, indem Sie vor dem Ausführen des Befehls einen Teil Ihrer Änderungen ausführen
nach :
quelle
Sind Sie sicher, dass Sie den Kopf überprüft haben und keine niedrigere Revision? Haben Sie auch ein Update durchgeführt, um sicherzustellen, dass Sie die neueste Version haben?
Es gibt eine Diskussion darüber am http://svn.haxx.se/users/archive-2007-01/0170.shtml .
quelle
Führen Sie die Verschiebung direkt im Repository durch.
quelle
Es gibt mindestens eine weitere Ursache für den Fehler "Veraltet". In meinem Fall war das Problem .svn / dir-props, das durch Ausführen von "svn propset svn: ignore -F .gitignore" erstellt wurde. zum ersten Mal. Das Löschen von .svn / dir-Requisiten scheint eine schlechte Idee zu sein und kann andere Fehler verursachen. Daher ist es möglicherweise am besten, "svn propdel" zu verwenden, um das fehlerhafte "svn propset" zu bereinigen.
quelle
Wenn Sie die Github-SVN-Brücke verwenden, liegt dies wahrscheinlich daran, dass sich auf Githubs Seite etwas geändert hat. Die Lösung ist einfach, Sie müssen nur ausführen
svn switch
, damit es sich selbst richtig findet, dann aktualisieren und alles wird funktionieren. Führen Sie einfach Folgendes aus dem Stammverzeichnis Ihrer Kasse ausoder
Die Basis für diese Lösung stammt aus Lee Preimesbergers Blog
quelle
Bewegen Sie es mit
svn mv
oder nurmv
? Ich denke, die Verwendung von justmv
kann dieses Problem verursachen.quelle
Ich habe das Verzeichnis zur sicheren Aufbewahrung auf meinen lokalen Computer verschoben, dann hat svn das dumme Verzeichnis gelöscht und dann festgeschrieben. Als ich versuchte, den Ordner von meinem lokalen Computer hinzuzufügen, wurde immer noch der Fehler ausgegeben (SVN Move hat dasselbe getan, als ich versucht habe, den Ordner umzubenennen). Also bin ich zurückgekehrt, dann habe ich einen mkdir DIRNAME gemacht, hinzugefügt und festgeschrieben. Dann habe ich den Inhalt hinzugefügt und festgeschrieben, und es hat funktioniert.
quelle
Ich habe diesen Fehler zufällig erhalten, nachdem ich einige Verzeichnisse gelöscht hatte, die jeweils einige Dateien enthielten. Ich habe die Verzeichnisse über Netbeans gelöscht und festgestellt, dass sie nicht tatsächlich gelöscht wurden. Es schien einfach alles in den Verzeichnissen zu löschen und den Verweis auf das Verzeichnis in Netbeans zu entfernen. Sie waren jedoch noch im Dateisystem vorhanden. Stellen Sie sicher, dass sie aus dem Dateisystem gelöscht wurden, und wiederholen Sie das Festschreiben.
quelle
Wenn Sie ein ähnliches Problem einmal gelöst haben, indem Sie einfach eine neue Arbeitskopie auschecken und das .svn-Verzeichnis ersetzen, das die Festschreibungsfehler auslöst, durch dieses neu ausgecheckte. Der Grund in meinem Fall war, dass nach einer Beschädigung des Repositorys und einer Wiederherstellung aus einer Sicherung die Arbeitskopie auf eine Revision zeigte, die im wiederhergestellten Repository nicht vorhanden war. Habe auch "Artikel veraltet" Fehler. Das Aktualisieren der Arbeitskopie vor dem Festschreiben hat dies nicht gelöst, aber das Ersetzen der .svn wie oben beschrieben.
quelle
Ich habe dies getan und es hat bei mir funktioniert:
1. Erstellen Sie eine Sicherungskopie Ihrer Datei. Sie können Ihren Code einfach in eine Textdatei kopieren.
2. Klicken Sie mit der rechten Maustaste auf die Datei, die Sie festschreiben möchten >> Team >> Verlauf anzeigen. 3. Im Bereich "Verlauf anzeigen" sehen Sie alle Revisionen dieser Datei. Klicken Sie mit der rechten Maustaste auf die neueste Version der Datei >> Revision abrufen: Ihre lokalen Änderungen werden überschrieben.
4. Führen Sie nun Ihren Code mit der neuesten Datei und der Sicherungsdatei zusammen (Schritt 1).
5. Synchronisieren und festschreiben Sie die neu zusammengeführte Datei.
quelle
Aktualisieren Sie Ihren Server und Client auf Subversion 1.9.
Wenn der
out of date
Fehler zufällig auftritt, wenn dies normalerweise nicht der Fall sein sollte, wenn Sie Commit ausführen, kann dies darauf hinweisen, dass Sie einen veralteten und nicht unterstützten Subversion 1.7 oder älteren Client oder Server verwenden.Sie sollten den Server und die Clients aktualisieren, um das Problem zu beheben. Siehe den entsprechenden Eintrag in den Versionshinweisen zu Subversion 1.9: "Veraltete" Fehler beim Festschreiben über HTTPv1 .
quelle
Der Fehler liegt darin, dass Sie diese bestimmte Datei nicht aktualisiert haben. Erst aktualisieren, dann können nur Sie die Datei festschreiben.
quelle
Versuchte alles außer in .svn direkt zu ändern. Nichts hat geholfen, also hier ist meine Lösung.
Unter Eclipse> Fenster> Ansicht anzeigen> Verlauf habe ich gesehen, dass die Datei nicht auf dem neuesten Stand ist, obwohl ich mehrere SVN-Dateien "Überschreiben und Aktualisieren" / "Zurücksetzen" / Löschen und Auschecken erstellt habe.
Also ging ich zum Paket-Explorer> Rechtsklick auf Datei> Ersetzen durch> Neueste aus dem Repository .
Ein weiterer Blick in die Verlaufsansicht zeigte, dass die Datei jetzt auf der neuesten Version war.
quelle
"Aufräumen" Damit sind Sie auf dem richtigen Weg.
Klicken Sie mit der rechten Maustaste auf den Ordner svn und klicken Sie auf "Aufräumen". Führen Sie dies aus, wenn Sie diesen Fehler erhalten.
quelle
Dies geschah, als ich einen Zweig einer früheren Version mit Dateien aus dem Trunk aktualisierte. Ich habe Windows Explorer verwendet, um Ordner aus meinem Trunk-Checkout-Ordner zu kopieren und sie in meine Eclipse-Ansicht des Checkout-Ordners für Release-Zweige einzufügen. Jetzt wurde Windows Explorer so konfiguriert, dass keine "versteckten" Dateien angezeigt werden, die mit "." Beginnen, sodass ich nicht wusste, dass alle falschen .svn-Dateien in meinen Ordner zum Auschecken von Release-Zweigen eingefügt wurden. Doh!
Meine Lösung bestand darin, das beschädigte Eclipse-Projekt wegzublasen, es erneut zu überprüfen und die neuen Dateien dann sorgfältiger zu kopieren. Ich habe auch Windows geändert, um "versteckte" Dateien anzuzeigen.
quelle
Ich habe diesen Fehler beim Versuch, einige Dateien festzuschreiben, erhalten, nur war es eine Datei / ein Ordner, die in meiner Arbeitskopie nicht vorhanden war. Ich wollte wirklich nicht die Mühe machen, die Dateien zu verschieben und erneut zu überprüfen. Am Ende habe ich die .svn / entry-Datei bearbeitet und die fehlerhafte Verzeichnisreferenz entfernt.
quelle
In meinem Fall war nur das Löschen der lokalen Version und das erneute Auschecken einer neuen Kopie eine Lösung.
quelle
Ich habe gerade diesen Fehler bekommen. Ich empfehle, dass Sie zuerst auf Ihrem Server überprüfen, ob die Originaldatei vorhanden ist. Manchmal werden die Änderungen nicht in Ihrem lokalen Ordner vorgenommen. Wenn dies Ihre Situation ist, löschen Sie einfach Ihren Ordner und checken Sie erneut aus.
quelle
Um das Problem zu lösen, musste ich die Datei mit dem Problem zurücksetzen und meine Arbeitskopie aktualisieren. Später habe ich die Datei erneut geändert und nach diesen Schritten ist der Fehler nicht mehr aufgetreten.
quelle
Führen Sie einfach svn in die Befehlszeile ein oder wählen Sie in Windows die Option svn update.
quelle
Ich habe das gerade bekommen, als ich versucht habe,
commit
aus einemtrunk
Verzeichnis. Das Ausführensvn update
aus demtrunk
Verzeichnis hat den Fehler nicht behoben. Durch Ausführensvn update
aus dem übergeordneten Verzeichnis (in das das.svn
Verzeichnis gehört) wurde der Fehler jedoch behoben.Meine Vermutung darüber, was passiert ist (ein Anwendungsfall unter anderem, es kann mehrere Gründe für diese "svn: E160024: Ressource veraltet; versuchen Sie zu aktualisieren" geben): Zusammen mit
trunk
gab es einbranches
Verzeichnis. Ich zog einenbranches/branch-1
inmaster
von GitHub.svn update
Aus dem übergeordneten Verzeichnis ( dh dem Stammverzeichnis meiner Arbeitskopie)trunk
zu tun, anstatt etwasbranches
zusätzlich zu tuntrunk
. Als ich es versuchtecommit
erneut , gab es keinen Fehler.Wie ich oben sagte, ist dies jedoch ein Fall unter wahrscheinlich vielen anderen.
Randnotiz: Im Gegensatz zu dem, was jemand vorgeschlagen hat, halte ich es nicht für eine gute Idee, manuell im
.svn
Verzeichnis zu spielen .quelle