Creé una rama de un proyecto SVN llamada 'características', y ahora cada vez que intento actualizar dicho proyecto, trae consigo una carpeta de características, que contiene otra copia del proyecto de la rama. ¿Hay alguna forma de eliminar la rama del repositorio por completo para que esto no suceda más?
91
Respuestas:
Claro:
svn rm
la carpeta no deseada y confíe.Para evitar esta situación en el futuro, seguiría el diseño recomendado para proyectos SVN:
/someproject/trunk
carpeta (o simplemente/trunk
si quieres poner solo un proyecto en el repositorio)/someproject/branches/somebranch
/someproject/tags
Ahora, cuando revise una copia de trabajo, asegúrese de revisar solo
trunk
o alguna rama individual. No revise todo en una copia de trabajo enorme que contenga todas las ramas. 11 A menos que sepa lo que está haciendo, en cuyo caso sabe cómo crear copias de trabajo superficiales.
fuente
Suponiendo que esta rama no es un enlace externo o simbólico, eliminar la rama debería ser tan simple como:
Si desea hacer esto en el repositorio, actualice para eliminarlo de su copia de trabajo, puede hacer algo como:
Entonces corre:
fuente
svn rm -m message http://...
no esupdate
obligatorioPara aquellos que usan TortoiseSVN , pueden lograr esto usando el Navegador de repositorio (está etiquetado como "Navegador de repositorios" en el menú contextual).
Busque la carpeta de la rama que desea eliminar, haga clic con el botón derecho y seleccione "Eliminar".
Ingrese su mensaje de confirmación y listo.
fuente
También puede eliminar la rama en el control remoto directamente. Una vez hecho esto, la próxima actualización lo eliminará de su copia de trabajo.
El
^
es la abreviatura de la URL del mando a distancia, como se ve en 'svn info'. Las comillas dobles son necesarias en la línea de comandos de Windows, porque^
es un carácter especial.Este comando también funcionará si nunca ha verificado la rama.
fuente
Puede eliminar la carpeta de características como cualquier otra en su pago y luego confirmar el cambio.
Para evitar esto en el futuro, le sugiero que siga las convenciones de nomenclatura para el diseño SVN.
O bien, asigne a cada proyecto una carpeta de troncales, ramas y etiquetas cuando se creen.
fuente
De la copia de trabajo:
svn rm branches/features
svn commit -m "delete stale feature branch"
fuente
El comando para eliminar una rama es el siguiente:
svn delete -m "<su mensaje>" <url de rama>
Si no desea obtener / pagar todo el repositorio, ejecute el siguiente comando en su terminal:
1) obtenga la ruta absoluta del directorio que contendrá su copia de trabajo
> pwd
2) Inicie la verificación del código
svn> svn checkout <url de la sucursal> <ruta absoluta desde el punto 1>
Los pasos anteriores le llevarán los archivos dentro de la carpeta de la rama y no a la carpeta completa.
fuente