svn - subversion - ¿Cómo creo una rama?
diferencia entre tag y branch svn (9)
¿Cómo creo una rama en SVN?
Cree una nueva rama usando el comando
svn copy
siguiente manera:
$ svn copy svn+ssh://host.example.com/repos/project/trunk /
svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH /
-m "Creating a branch of project"
El mejor consejo para los nuevos usuarios de SVN; Esto puede ayudar un poco a obtener las URL correctas rápidamente.
Ejecute
svn info
para mostrar información útil acerca de la rama que se está retirando.
La URL debería (si ejecuta svn en la carpeta raíz) darle la URL que necesita copiar.
También para cambiar a la rama recién creada, use el comando
svn switch
:
svn switch http://my.repo.url/myrepo/branches/newBranchName
La ramificación en Subversion es facilitada por una facilidad de copiado muy liviana y eficiente.
La ramificación y el etiquetado son efectivamente lo mismo.
Simplemente copie una carpeta completa en el repositorio a otro lugar en el repositorio usando el comando
svn copy
.
Básicamente, esto significa que es por convención lo que significa copiar una carpeta, ya sea una copia de seguridad, una etiqueta, una rama o lo que sea. Dependiendo de cómo quiera pensar en las cosas (normalmente, dependiendo de la herramienta de SCM que haya usado en el pasado), debe configurar una estructura de carpetas dentro de su repositorio para respaldar su estilo.
Los estilos comunes son tener un grupo de carpetas en la parte superior de su repositorio, denominadas
tags
,
branches
,
trunk
, etc., que le permiten copiar todo su
trunk
(o subconjuntos) en las
tags
y / o carpetas de
branches
.
Si tiene más de un proyecto, es posible que desee replicar este tipo de estructura en cada proyecto:
Puede tomar un tiempo acostumbrarse al concepto, pero funciona, solo asegúrese de que usted (y su equipo) tengan claros los convenios que va a usar. También es una buena idea tener una buena convención de nomenclatura, algo que le indique por qué se creó la sucursal / etiqueta y si aún es apropiada, considerar formas de archivar las sucursales que están obsoletas.
Normalmente lo copiaría en svn + ssh: //host.example.com/repos/project/branches/mybranch para que pueda mantener varias sucursales en el repositorio, pero su sintaxis es válida.
Aquí hay algunos consejos sobre cómo configurar el diseño de su repositorio .
Si incluso planeas fusionar tu sucursal, te sugiero que mires esto:
Escucho que Subversion 1.5 construye más el seguimiento de fusión, no tengo experiencia con eso. ¡Mi proyecto está en 1.4.x y svnmerge.py es un salvavidas!
Si su repositorio está disponible a través de https, puede usar este comando para bifurcar ...
svn copy https://host.example.com/repos/project/trunk /
https://host.example.com/repos/project/branches/branch-name /
-m "Creating a branch of project"
Supongamos que desea crear una rama a partir de un nombre de troncal (como "PRUEBA") luego use:
svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST
svn cp /trunk/ /branch/NEW_Branch
Si tiene algunos cambios locales en el tronco, use
Rsync
para sincronizar los cambios
rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch
- Crea una nueva carpeta fuera de tu proyecto actual. Puedes darle cualquier nombre. (Ejemplo: tiene un proceso de pago para un proyecto llamado "Personalización". Y tiene muchos proyectos, como "Proyecto1", "Proyecto2" ... Y desea crear una rama de "Proyecto1". Entonces, primero abra el " Personalización ", haga clic con el botón derecho y cree una nueva carpeta y asígnele un nombre," Project1Branch ").
- Haga clic derecho en "Myproject1" .... TortoiseSVN -> Branch / Tag.
- Elija copia de trabajo.
- Abra el navegador .... Justo a la derecha del paralelo en "A URL".
- Seleccione la personalización ... haga clic derecho y luego Agregar carpeta. e ir a través de la carpeta que ha creado. Aquí está "Project1Branch". Ahora haga clic en el botón Aceptar para agregar.
- Echa un vistazo a este nuevo banch.
- De nuevo, vaya a su proyecto qué rama desea crear. Haga clic derecho en TorotoiseSVN -> rama / etiqueta. Luego seleccione copia de trabajo. Y puedes dar la URL como nombre de tu rama. como {su dirección IP / svn / AAAA / Personalización / Project1Branch}. Y puede establecer el nombre en la URL para que cree la carpeta solo con este nombre. Me gusta {Su dirección IP / svn / AAAA / Personalización / Project1Branch / MyProject1Branch}.
- Presione el botón OK. Ahora puede ver los registros en ... su copia de trabajo se almacenará en su sucursal.
- Ahora puedes echar un vistazo ... y dejarte disfrutar de tu trabajo. :)