Von Google gefunden, wie man das Problem behebt: Drücken Sie F5 im Festschreibungsfenster (nicht im "Warn-Popup").
Am 26.08.2011 22:39 schrieb Ryan J Ollos:
Seit einigen Monaten wird beim Starten von Commit das folgende Dialogfeld angezeigt. Dies tritt häufig auf, wenn nach einer Zusammenführung versucht wird, ein Commit durchzuführen.
In letzter Zeit ist mir jedoch aufgefallen, dass beim Abbrechen und anschließenden manuellen Aktualisieren der Dateiliste (F5) die Meldung beim zweiten Starten des Commits nicht mehr angezeigt wird. Das Commit scheint gut und ohne weitere Probleme erfolgreich zu sein.
Das Festschreibungsdialogfeld überwacht die Arbeitskopie in einem Hintergrundthread auf Änderungsbenachrichtigungen. Solche Benachrichtigungen werden vom Betriebssystem gesendet, falls Dateien geändert / verschoben / umbenannt / ... werden. Wenn eine solche Benachrichtigung empfangen wird, führt der Festschreibungsdialog zunächst einige Überprüfungen durch, damit die meisten von ihnen gelöscht werden können. Wenn die Benachrichtigung anzeigt, dass sich eine Datei, die nicht überprüft und im Festschreibungsdialog nicht sichtbar ist, irgendwie geändert hat, wird wieder auf nicht rekursives Festschreiben umgeschaltet. Dies liegt daran, dass, wenn Sie beispielsweise eine Datei in einem anderen Editor geöffnet haben und Ihre Änderungen speichern, während das Festschreibungsdialogfeld geöffnet ist, diese Datei ebenfalls festgeschrieben wird, obwohl Sie sie im Festschreibungsdialogfeld nicht überprüft haben (sie wird nicht angezeigt) bis Sie den Dialog mit F5 aktualisieren).
Wenn Sie diesen Warndialog häufig sehen, überprüfen Sie bitte, ob ein anderes Tool / eine andere App ausgeführt wird, mit der Dateien in Ihrer Arbeitskopie geändert werden.
Und wie Sie bemerkt haben: Wenn Sie F5 drücken, wird dieses 'nicht rekursive Flag' zurückgesetzt, da nach einer Aktualisierung alle Dateien wieder angezeigt werden - auch die, die Sie nach dem Start des Dialogfelds geändert haben.
Stefan
Ich hatte das gleiche Problem, löste es jedoch, indem ich Änderungen an Dateien zurücksetzte, die ich als "Beim Festschreiben ignorieren" markiert hatte.
Nachdem ich diese Dateien zurückgesetzt hatte, konnte tortoisesvn alle anderen Dateien aus der Zusammenführung festschreiben
quelle
Nein, Ihr Commit ignoriert alle Änderungen im WC-Baum und spiegelt nur Änderungen auf Stammebene wider (unterbrochene Zusammenführung).
Sie haben beim ersten Auschecken nicht rekursiv einen Fehler gemacht. Sie können versuchen, mithilfe von
--depth infinity
Parametern in der CLI ein gutes, vollständiges Festschreiben durchzuführen, oder diesen Schalter in der GUI von TortoiseSVN finden.quelle
In meinem Fall war dies genau der Grund, warum die Nachricht angezeigt wurde, selbst wenn ich diese Dateien für das Commit abgewählt habe.
Hässliche Lösung, die nur dann sicher funktioniert, wenn nur wenige Dateien betroffen sind:
Erinnerung an sich selbst: Integrieren Sie einen Zweig nur dann wieder, wenn das Ziel (Trunk) sauber ist.
quelle
Es sieht so aus, als würde TortoiseSVN eine Art Gültigkeitsprüfung durchführen, bevor Commit aufgerufen wird. Gut, aber die Fehlermeldung ist sehr unklar.
Als ich mit diesem Problem konfrontiert wurde, habe ich wieder die Befehlszeile svn zum Festschreiben verwendet. Das Festschreiben schlug fehl, weil einer der Ordner nicht auf dem neuesten Stand war. Nachdem ich nur diesen Ordner aktualisiert hatte, führte ich "svn commit" erneut aus und es ging durch.
Bearbeiten: PS: Bevor Sie dies ausprobieren, stellen Sie sicher, dass keine Dateien als "Beim Festschreiben ignorieren" markiert sind. "Beim Festschreiben ignorieren" ist schildkrötenspezifisch, und das SVN-Festschreiben übernimmt auch diese Änderungen.
quelle
Ich dachte nur, ich würde das posten, weil es für mich funktioniert hat ...
Der Grund dafür ist, dass ich eines der neuen Projekte, die ich erstellt hatte, teilweise umbenannt hatte und aus irgendeinem Grund alle auf dem Festschreibungsbildschirm als "Fehlend" angezeigt wurden.
Nachdem ich das Projekt und den Ordner (auf die SVN ein Häkchen gesetzt hatte) entfernt und wieder als neues Projekt eingefügt hatte, wurde plötzlich alles "Fehlende" zu "Hinzugefügt" und das Commit lief einwandfrei, ohne mich vor irgendetwas zu warnen .
Hoffe das hilft!
quelle
Ich habe dieses Problem gesehen und die Ursache waren einige hinzugefügte Dateien, die ohne ersichtlichen Grund nicht den hinzugefügten Status hatten. Sie waren "normal", obwohl der übergeordnete Ordner korrekt als "hinzugefügt" angezeigt wurde. Ich habe diese "normalen" Änderungen rückgängig gemacht und sie dann manuell erneut durchgeführt. Dadurch wurde jedes hinzugefügte Element zweimal in der Festschreibungsliste angezeigt, der Fehler wurde jedoch behoben, und jetzt scheint alles in Ordnung zu sein.
Es hatte nichts mit Ignorieren beim Festschreiben zu tun, wie in einer anderen Antwort, es schien nur ein Fehler in TortoiseSVN zu sein.
quelle
Das Problem könnte sein, dass Ihre Mergeinfo von jemandem oder automatisch gelöscht wird, weil die Infos im Baum nach oben verschoben wurden. Wenn Sie sie wieder zusammenführen, wird es für den Moment funktionieren. Aber alle anderen werden Probleme mit ihren nicht zusammengeführten Zweigen bekommen. SVN verliert Code und führt bereits übermittelten Code erneut zusammen.
Das Zurücksetzen und erneute Ändern dieser Dateien könnte also funktionieren, aber Sie sollten die Änderungen nicht nur festschreiben.
quelle
Ich hatte gerade das gleiche Problem. Anstatt alle Dateien auszuwählen, habe ich auf versioniert geklickt und alles hat gut funktioniert. In meinem Fall hat die versionierte Option alle Dateien ausgewählt, sodass jetzt alles in Ordnung ist.
quelle
Ich kenne keine Option für Schildkröten, aber Sie könnten die Kommandozeile verwenden
Das sollte so funktionieren, wie du es magst, um Grün zu bearbeiten
quelle