tag - SVN X permanece en conflicto de árboles
tag svn (5)
Estoy usando VisualSVN (que utiliza Tortoise). Accidentalmente muevo una carpeta a una ubicación diferente. Cuando intenta retroceder, SVN vomita con este error. Sucedió una vez antes y logré hacer algunas actualizaciones / confirmaciones aleatorias, sin saber lo que estaba haciendo y fue "arreglado". No puedo volver a extraer la misma magia, así que necesito saber cómo obtener mis archivos, mi directorio y el conflicto de árboles.
¡Gracias!
Mantenga una copia de seguridad de la carpeta que ha movido. Ahora en SVN, haga clic en TortoiseSVN >> Resuelto. Seleccione los archivos / carpeta y resolver. Ahora actualice / confirme los datos svn.
No estoy seguro de en qué estado se encuentra ahora, pero lo mejor sería probablemente:
- Mueve la carpeta de tu repositorio completamente
- Hacer una
svn cleanup
- Hacer una
svn update
- Copie los archivos de la carpeta anterior (sin los archivos .svn) sobrescribiendo los archivos de origen antiguos que se actualizaron simplemente svn.
Tuve el mismo error (conflicto de árbol), pero de un flujo de trabajo diferente.
Encuentra qué proceso tiene la cerradura. Descargue Handle.exe y abra la carpeta a la que extrajo. Luego ejecute "C:/path/handle.exe" "C:/path/FileOrFolder"
.
https://technet.microsoft.com/en-us/sysinternals/bb896655.aspx
Flujo de trabajo para reproducir:
- 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)
Arreglar:
- 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
Tuve el mismo problema cuando intenté eliminar una rama en un entorno de Linux. Lo que hice fue:
- svn revertir rama
- svn up
- svn limpieza
- svn remove branch - marca la rama de nuevo para eliminar
- svn ci
No sé cuál era el problema, pero lo experimenté dos veces en dos semanas.
http://rubyjunction.us/subversion-hell-sh
Editar
Aquí está el script de shell del enlace, que podría ser útil para los usuarios de Linux / Unix ...
#!/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