Posts

Showing posts with the label SVN

SVN: Tagging and Branching

Spanish version / Versión en Español What are "branches" and "tags" when we're talking about SVN? A tag is simply a specially marked revision: it allows us to give a revision a friendlier name than, say, "revision 901". This is why tags are usually associated to a new release of our product. For this reason, it's common practice to create a tag each time a new version of the software is released, setting the file versions in concordance with the tag name. For instance, a normal name for a tag would be "Version 3.2.0". On the other hand, a branch is a separate line of development, and it can be used in various scenarios. Say we need to do a major refactoring without breaking our colleagues' solution, and we need to commit along the way because work will be long and complex. So we create a branch, as a copy of the "trunk" (the main development line), and work there. When we're done, we merge our changes back int

SVN: Tagging y Branching

Versión en inglés / English version ¿Qué son un Tag y un Branch de SVN? Ambos son creados inicialmente como copias del "trunk" de una carpeta SVN. Un Tag es simplemente una revisión SVN marcada especialmente, lo que nos permite darle un nombre más amigable que "revisión 901". Es por esto que es usual ir crear un tag cada vez que se publica una nueva versión del software, marcando la versión de los archivos en concordancia con el nombre del tag; un nombre esperable para un tag sería "Versión 3.2.0". Por otro lado, un branch es una línea de desarrollo separada, y se usa en varios escenarios. Supongamos que queremos hacer un gran refactoring sin interferir con el trabajo del equipo, y queremos hacer commits a lo largo de nuestro trabajo porque es largo y complejo. Por lo tanto, creamos un branch como una copia del "trunk" (la línea principal de desarrollo) y trabajamos ahí. Cuando terminamos, hacemos un merge de nuestros cambios en el tru