Mezclando ramas con rama principal en SVN

Comparte!

Lo reconozco, me he hecho un asiduo fanático de git, no solo por su flexibilidad y facilidad para aprender y manejarlo sino por todas las bondades a la hora de manejar el despliegue de aplicaciones en ambientes, incluso en producción. Lo importante de todo esto, es manejar, al menos, una tecnología para el control de versiones. No sé si es una buena práctica, una salvación para el “yo del futuro”, evitar al desarrollador desordenado del equipo o una manera más cómoda de manejar tus códigos de fuente. Elige tu razón favorita, lo que es cierto es que hay muchas.

Ahora bien, si en tu trabajo te exigen usar algo distinto, siempre es bueno tener alguna carta bajo la manga. En mi caso, donde trabajo usan SVN. A pesar de que no tiene mucho que envidiarle a git, no es una herramienta que me sea cómoda de usar. Y no sé si es tontera mía, porque con clientes GUI como Tortoise (Windows) o Snail (MacOS) las cosas debieran ser más fáciles e intuitivas. Yo permanezco fiel a la vieja usanza con la línea de comandos. Puede que me sienta “hacker” como de las películas y lo considere más cool. Pero lo cierto es que me acomoda y me tranquiliza más entrar un par de comandos en la terminal, antes que hacer un par de clicks.

Es por eso que contrariando la posibilidad de simplificar mi vida es que opto por llenarme de scripts shell. Y algo que siempre asusta es el proceso de fusión de ramas con la rama principal. De ahí la razón de haber construido este script que permite lograrlo.

El script lo que realiza es,

  1. Autenticación con repositorio SVN
  2. Descarga trunk de repositorio
  3. Mezcla branch con trunk descargado
  4. Renombra branch para marcarlo como mezclado
  5. Elimina archivos descargados

Si tienen Windows, les recomiendo bastante Tortoise SVN

Por línea de comandos pueden instalarlo de las siguientes maneras,

  • brew install subversion (MacOS)
  • yum install mod_dav_svn subversion (CentOS, RHEL)
  • apt-get install subversion (Ubuntu

Puedes revisar en el repositorio que dejé en mi perfil de GitHub llamado, SVN Scripts y aportar en nuevas mejoras o revisarlo directamente más arriba.

Comparte!