Frage

Ich verwende VisualSVN (die Schildkröte verwendet). Ich bewege versehentlich einen Ordner an einem anderen Ort. Wenn versucht es zurück zu bewegen, kotzt SVN mit diesem Fehler. Es geschah einmal vor und ich es geschafft, einige zufällige Updates / Commits zu tun, nicht zu wissen, was ich tat, und es wurde „fixiert“. Ich kann die gleiche Magie wieder nicht ziehen, so dass ich wissen müssen, wie meine Dateien und Verzeichnisse zu bekommen und von Baum-Konflikt.

Danke!

War es hilfreich?

Lösung

Ich hatte den gleichen Fehler (Baumkonflikt), aber aus einem anderen Workflow.

Finden Sie, was Prozess die Sperre hat. Herunterladen Handle.exe, und offen für den Ordner, den Sie extrahiert. Dann läuft "C:\path\handle.exe" "C:\path\FileOrFolder".

https://technet.microsoft.com/en-us/sysinternals/ bb896655.aspx

Workflow zu reproduzieren:

- delete folder (having one of the files locked by a program that is within this folder)
- commit parent folder of folder you deleted, and look for red text of the folder you deleted (it should be brown, not red if there aren't issues in SVN)

Um fix:

- forcefully kill the lock (or close the program so it releases the lock)
- run cleanup command on folder you deleted
- revert folder you deleted
- delete folder you deleted
- commit parent folder of folder you deleted

Andere Tipps

Ich bin mir nicht sicher, in welchem ??Zustand es ist in jetzt, aber die beste Wahl wäre wahrscheinlich zu:

  1. Bewegen Sie den Ordner aus Ihrem Repository vollständig
  2. Führen Sie eine svn cleanup
  3. Führen Sie eine svn update
  4. Kopieren Sie die Dateien aus dem Ordner zurück (ohne die .svn-Dateien), die alten Quelldateien zu überschreiben, die gerade svn aktualisiert wurden.

http://rubyjunction.us/subversion-hell-sh

Bearbeiten

Hier ist der Shell-Skript aus dem Link, der auf Linux / Unix-Benutzer nützlich sein könnte ...

#!/bin/sh

if [ "" == "$1" ] ; then
  echo "Usage: subversion-hell.sh A_PROJECT"
  echo "A_PROJECT should be a Subversion folder you are having problems with,"
  echo "and you should be in the folder above A_PROJECT"
fi

DIR=`pwd`
PWD=$DIR
DIR=`echo $DIR | sed s/^.*\\\/trunk/trunk/`

mkdir ~/tmp/       2>/dev/null
rm -Rf ~/tmp/$1   2>/dev/null
mv ~/$DIR/$1 ~/tmp/
find ~/tmp/$1/ -iname '.svn*' -exec rm -Rf {} \; 2>/dev/null
cd $PWD
echo svn co YOUR_URL_HERE/$DIR/$1 $1
svn co YOUR_URL_HERE/$DIR/$1 $1
cp -Rf ~/tmp/$1/* $PWD/$1/

# YOUR_URL_HERE can be found by looking in file .svn/entries, near the top

Ich hatte das gleiche Problem, wenn versucht, einen Zweig auf Linux-Umgebung zu löschen. Was ich tat, war:

  1. svn revert Zweig
  2. svn up
  3. svn cleanup
  4. svn remove Zweig - markieren die verzweigen wieder zum Entfernen
  5. svn ci

Ich weiß nicht, was das Problem war, aber ich erleben es zweimal in zwei Wochen.

ein Backup des Ordners Sie, dass Sie umgezogen sind. Jetzt in SVN, klicken Sie auf TortoiseSVN >> gelöst. Wählen Sie die Dateien / Ordner und Entschlossenheit. Jetzt aktualisieren / commit SVN-Daten.

Beachten Sie, dass dies auch dann auftreten können, wenn Sie „nichts tun“ - das heißt jemand bewegt sich um Ordner auf Sie im Repository und Sie nicht wissen, über sie. Passierte mir. Wenn dies der Fall ist, löschen Sie die Problemordner aus Ihrem Repository und svn update.

  

Ein Baumkonflikt tritt auf, wenn ein Entwickler / umbenannten bewegt / eine Datei gelöscht   oder der Ordner, die ein anderer Entwickler entweder hat auch   bewegt / umbenannten / gelöschter oder nur modifiziert. Es gibt viele verschiedene   Situationen, die in einem Baumkonflikt, und alle von ihnen führen können verlangen   verschiedene Schritte, um den Konflikt zu lösen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top