tortoise - svn tutorial español
''Un-SVN'' una copia de trabajo (14)
¿No puedes simplemente eliminar la subcarpeta .svn?
Por lo que sé SVN almacena todo sobre su conexión al repositorio en esta subcarpeta (al menos en Windows)
Tengo una carpeta que es mi copia de trabajo. ¿Cómo elimino toda la funcionalidad de SVN de esta carpeta? Hay una razón para que yo haga esto, de alguna manera mi carpeta maestra que contiene todas mis copias de sitios que funcionan, de alguna manera se ha convertido en una copia de trabajo, así que tengo una copia de trabajo dentro de sí misma como tal.
Entonces, ¿hay una manera fácil de eliminar el control de versiones de una carpeta?
Aquí hay un script por lotes de Windows que eliminará todas las carpetas .svn de un directorio de copia de trabajo de Subversion:
@echo off
rem cleanup .svn subdirs
setlocal enabledelayedexpansion
rem change to directory that this batch script resides in
if "%~1"=="" (
echo Usage: svncleanup svn_working_copy_dir
exit /b 1
)
echo cleaning up .svn subdirs in "%~1" ...
for /R "%~1" %%I in (.svn) do rmdir /Q /S "%%I" > NUL 2>&1
Como han dicho otros, al eliminar la carpeta .svn se eliminará la funcionalidad de SVN de esa carpeta . Si lo hace de forma recursiva, va a "des-SVN" su WC completo, que es esencialmente lo que hace el comando de exportación. No estoy seguro de si es una característica de Tortoise, el binario SVN de CLI, o ambos, pero recuerdo que uno de ellos le permite hacer una exportación local que, literalmente, solo elimina las carpetas .svn de un WC. Una exportación normal crea una copia de su WC en una nueva ubicación que no está versionada.
Con TortoiseSVN, puede hacer clic con el botón derecho y arrastrar y soltar su carpeta y luego elegir el comando "SVN Export All to here".
El cliente de Windows "TortoiseSVN" tiene la característica "Exportar". Exportar crea una copia en otro lugar en una carpeta diferente sin todas las carpetas ".svn" en ellos. Puede exportar desde el repositorio o desde la copia local con la opción para incluir archivos no versionados.
Puedes eliminar manualmente todas las carpetas .svn (asegúrate de hacer esto también para cada subcarpeta) o usa una utilidad simple como el comando de shell de Jon Gallaway .
Qué tal esto:
for /f "tokens=* delims=" %%i in (''dir /s /b /a:d ".svn"'') do rd /s /q "%%i"
para eliminar recursivamente todas las carpetas .svn--
(si la función de exportación no es una opción para usted, no puede acceder al repositorio, etc.)
Si está utilizando TortoiseSVN, puede hacer clic derecho dentro de la carpeta raíz de su copia de trabajo y hacer clic en Exportar ... Eso funcionará incluso si tiene cambios sin compromiso.
Del mismo modo, puede hacer una exportación desde su repositorio y no creará ninguna de las carpetas .svn.
Otro enfoque sencillo es eliminar todas las carpetas .svn como se mencionó anteriormente.
Si usabas herramientas * nix:
find . -type d -name .svn -print0 | xargs -0 rm -fr
Simplemente elimine todas las carpetas ".svn". Eso es.
Solo uso el Explorador de Windows para buscar ".svn" (comenzando en la parte superior de mi copia de trabajo) y luego selecciono todas las carpetas que encuentra y las elimino.
TortoiseSVN tiene la capacidad de exportar archivos sin sus enlaces de subversión: haga clic con el botón derecho en un repositorio (o en un directorio dentro de un repositorio), luego en TortoiseSVN y luego en Exportar. Otra forma de hacerlo es eliminar todos los directorios .svn en todas las carpetas.
svn export es el comando que estás buscando. Puede exportar un conjunto controlado de archivos a una ubicación no controlada y usar eso.
Exportación en el lugar con tortuga
Cuando leí todas las sugerencias anteriores me encogí porque mis archivos fuente son de 3GB, con muchas carpetas .vv.
Seleccione Exportar desde el menú contextual de R-click y cuando aparezca el cuadro de diálogo "dónde colocar la copia", seleccione esa misma carpeta . DE ACUERDO. Viola, todo el control de código fuente se ha ido (recursivamente), al instante.