Pregunta

I creó una rama de un proyecto SVN denominada 'Características', y ahora cada vez que tratan de actualización de dicho proyecto, que trae consigo una cuenta con carpeta, que contiene otra copia del proyecto de la rama. ¿Hay una manera de quitar la rama desde el repositorio completamente para que esto no suceda más?

¿Fue útil?

Solución

Claro:. svn rm la carpeta no deseado, y comprometerse

Para evitar esta situación en el futuro, me gustaría seguir el recomendadas diseño para proyectos de SVN:

  • Ponga su código en el /someproject/trunk carpeta (o simplemente /trunk si usted quiere poner una sola proyecto en el repositorio)
  • Creado ramas como /someproject/branches/somebranch
  • etiquetas puestas bajo /someproject/tags

Ahora, cuando se echa un vistazo a una copia de trabajo, asegúrese de comprobar a cabo sólo trunk o algún derivado individual. No verificación de todo lo que fuera en una gran copia de trabajo que contiene todas las ramas. 1

1 A menos que sepa lo que está haciendo, en cuyo caso usted sabe cómo crear copias de trabajo de poca profundidad.

Otros consejos

Suponiendo que esta rama no es un externo o un enlace simbólico, la eliminación de la rama debe ser tan simple como:

svn rm branches/< mybranch >

svn ci -m "message"

Si desea hacer esto en el repositorio y luego actualizar a eliminarlo de su copia de trabajo puede hacer algo como:

svn rm http://< myurl >/< myrepo >/branches/< mybranch >

A continuación, ejecute:

svn update

Para aquellos que utilizan TortoiseSVN , usted puede lograr esto mediante el uso del navegador de repositorios (que está etiquetado como "Repo-browser" en el menú contextual.)

menú contextual

Para la rama carpeta que desea eliminar, haga clic en él y seleccione "Eliminar".

eliminar la carpeta

Ingrese su mensaje de registro, y ya está.

cometer

También puede borrar la rama en el control remoto directamente. Una vez hecho esto, la próxima actualización, se eliminará de su copia de trabajo.

svn rm "^/reponame/branches/name_of_branch" -m "cleaning up old branch name_of_branch"

El ^ es la abreviatura de la URL del mando a distancia, como se ve en 'svn info'. Las comillas son necesarias en la línea de comandos de Windows, porque ^ es un carácter especial.

Este comando también trabajo si nunca han comprobado la rama.

Es posible eliminar las características carpeta igual que cualquier otro en el proceso de pago a continuación, confirmar el cambio.

Para evitar esto en el futuro le sugiero que siga las convenciones de nombres para el diseño de subversion.

Cualquiera de dar a cada proyecto un tronco, las ramas, las etiquetas de carpeta cuando se crean.

svn
+ project1
  + trunk
    + src
    + etc...
  + branches
    + features
      + src
      + etc...
  + tags
+ project2
  + trunk
  + branches
  + tags

A partir de la copia de trabajo:

svn rm branches/features
svn commit -m "delete stale feature branch"

comando para eliminar una rama es el siguiente:

svn delete -m ""

Si usted no desea ir a buscar / checkout todo el repositorio, ejecute el siguiente comando en el terminal:

1) obtener la ruta absoluta del directorio que contendrá su copia de trabajo
> Pwd
2) Iniciar SVN código de pago y envío
> Svn checkout

Los pasos anteriores le conseguirán los archivos dentro de la carpeta de la rama y no toda la carpeta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top