Cuando se trabaja con archivos, a medida que se van modificando, estos tienen en diferentes momentos diferentes estados. Por ejemplo, supongamos que comienzo un trabajo en un documento en Word, el primer día escribo una introducción y guardo el archivo. En ese instante tengo la primera versión del documento. Al día siguiente le agrego el primer capítulo al trabajo y lo vuelvo a grabar, entonces, ahí tengo la segunda versión del archivo. Y así sucesivamente. Por lo general sobrescribo el mismo archivo pisando la versión anterior. Resultaría muy engorroso guardar el trabajo con un nombre diferente cada vez, para conservar los cambios entre versión y versión, entonces lo que se hace es sobrescribir el mismo archivo, perdiendo de esa forma los estados anteriores del documento.
Pues bien, entonces el control de versiones consiste y disponer en forma ordenada, de cada una de las versiones o estados de esos archivos.
Esto resulta muy útil, por ejemplo cuando se programan sistemas informáticos, pues un pequeño cambio en un archivo, puede alterar el funcionamiento del software y resultaría muy práctico poder volver a un estado anterior. Aunque esto es extensible a cualquier tipo de archivos, como imágenes, planilla de cálculos, videos, textos, etc.
A continuación presento dos herramientas, que utilizadas combinadamente nos proporciona un control de versiones excelente. Nos permite volver a cualquier estado del documento en el que estemos trabajando, ver las diferencias entre versiones, etc.
Estas herramientas de uso libre son: Subversion y TortoiseSNV.
Subversion es el servidor que se encarga de crear los repositorio de datos, es decir, donde se almacenarán las versiones de los archivos. TortoiseSNV se encarga de gestionar esos documentos en nuestro entorno de trabajo, es decir, con TortoiseSNV podremos agregar una nueva versión al repositorio u obtener una versión determinada. Cabe destacar, que este último se integra con el navegador de Windows. Esto quiere decir, que cada vez que hagamos click derecho en alguna carpeta, en el menú contextual aparecerán las opciones de este programa.
Primero descargaremos Subversion, pero con una distribución visual que nos facilita muchísimo la tarea de administración, se llama VisualSVN Server, y se puede descargar desde aquí.
Los pasos que seguiremos a continuación serán los siguientes:
1. Instalación de VisualSVN.
2. Creación de usuarios.
3. Creación de un repositorio.
4. Creación de una carpeta a la cual le asignaremos usuarios y permisos.
5. Instalación de TortoiseSNV.
6. Importación de un proyecto existente al repositorio.
7. Obtención de la última versión existente en el repositorio a nuestro entorno de trabajo.
8. Modificación del proyecto.
9. Actualización de cambios en el repositorio.
1 – Instalación de VisualSVN Server.
Ejecutamos el instalador.
Pulsamos Next
Aceptamos el acuerdo de licencia y Next.
Seleccionamos la primera opción y pulsamos Next:
En esta etapa indicamos lo siguiente:
Location: Ruta donde se instalarán los archivos del server.
Repositories: Ruta donde se guardarán los archivos del repositorio y por consiguiente los archivos de nuestro proyecto.
Server Port: Puerto por el que se comunicarán los clientes con el servidor. Como se utiliza una conexión segura, por defecto usa el puerto 443, pero lo podemos cambiar si está ocupado por otro servidor.
Authentication: Seleccionamos la primera opción para que la validación se haga por el server. Aunque se puede usar la integrada de Windows.
Luego pulsamos Next.
Pulsamos Next:
Y por último Finish.
2 – Creación de usuarios.
Ahora crearemos los usuarios que tendrán acceso al sistema.
Ingresamos al server:
En el panel izquierdo nos posicionamos sobre la carpeta Users, y hacemos click derecho y seleccionamos “Create user”:
Indicamos el nombre de usuario y la clave:
Pulsamos OK, y ya tendremos el usuario creado:
3 – Creación de un repositorio.
No paramos en el ícono Repositories, click derecho y pulsamos en “Create New Repository”
Indicamos el nombre del Repositorio:
Pulsamos OK, y ya veremos el repositorio creado:
4 – Crearemos una carpeta para nuestro proyecto.
Nos paramos sobre nuestro repositorio, click derecho, y pulsamos sobre Nuevo–>Folder.
Asignamos un nombre:
Pulsamos OK y tendremos nuestra carpeta creada.
Ahora asignaremos los usuarios y permisos para dicha carpeta.
Para ello nos paramos en la carpeta, click derecho y seleccionamos, Todas las tareas–> Manage Security:
Ahí podremos ver los usuarios con sus correspondientes permisos:
O bien podemos agregar un usuario nuevo, pulsando “Add”:
En esta lista podemos seleccionar un usuario o un grupo y pulsando OK, lo agregaremos a la carpeta.
5 – Instalación de TortoiseSNV.
Ejecutamos el instalador:
Pulsamos Next:
Aceptamos el acuerdo de licencia y pulsamos Next:
Dejamos todo por defecto y Next:
Install:
Y por ultimo Finish.
Debemos reiniciar el equipo, por lo que pulsamos Yes.
6 – Importación de un proyecto existente al repositorio.
Bien, ahora queremos agregar un proyecto que ya hemos comenzado, al repositorio que acabamos de crear. En este caso, pondremos la carpeta “Trabajo Final”, en nuestro repositorio “Universidad”, dentro de “Tesis”.
Para ello, debemos hacer click derecho sobre la carpeta “Trabajo Final”, luego seleccionar TortoiseSVM–>Import
Esto nos mostrará el siguiente cartel:
En el cual debemos ingresar la URL de nuestro repositorio.
Si queremos obtenerlo, podremos hacer lo siguiente:
Ir al server, desplegar nuestro repositorio y pararnos sobre la carpeta en la que guardaremos los archivos, pulsamos click derecho sobre la misma y seleccionamos “Copy URL to Clipboard”:
Luego volvemos al cuadro anterior y pegamos el URL, pulsamos OK, y se nos mostrará el siguiente cartel:
Pulsamos “Accept permanently”, y luego el sistema nos consultará por nuestro usuario y pass:
Los ingresamos con los datos que hemos creado anteriormente, y el sistema comienza con la transferencia de archivos:
Por último pulsamos Ok. Y ya tenemos nuestro proyecto agregado en el repositorio.
7 – Obtención de la última versión existente en el repositorio a nuestro entorno de trabajo.
Ahora lo que queremos hacer es traer una copia de nuestro proyecto “Tesis” desde el repositorio hasta el escritorio. Para ello hacemos click derecho en el cualquier parte del mismo y seleccionamos “SVN Checkout”:
Aquí debemos ingresar nuestra URL o simplemente buscarla desde el botón “…”:
Seleccionamos las opción “HEAD revision” para obtener la ultima disponible y comienza la transferencia de archivos:
Finalmente pulsamos OK, y ahora podemos ver en el escritorio la carpeta “Tesis”, con un tilde verde, que nos indica que tenemos la versión más reciente del repositorio:
Si abrimos la carpeta, podemos ver que cada archivo también tiene el tilde verde:
8- Modificación del proyecto.
Ahora, en nuestra carpeta local, modificaremos un archivo:
Ahora podemos ver que el archivo con el signo de exclamación en rojo es el que ha sido modificado. Esto quiere decir, que es diferente a la última versión que existe en el repositorio.
También podemos comprobar esto viendo la carpeta Tesis del escritorio, que nos alerta de alguna modificación:
9 – Actualización de cambios en el repositorio.
Finalmente, subiéremos los cambios al repositorio, generándose así una nueva versión de nuestro proyecto.
Para llevar adelante esto, debemos hacer click derecho sobre la carpeta “Tesis” y seleccionar la opción “SVN Commit”
Se nos mostrará un resumen de los cambios que se realizaran:
Podemos ingresar algún comentario en la parte superior y seleccionar que archivos serán a los que se les aplique la actualización. Por último pulsamos OK.
Es probable que nos pida nuestras credenciales, por lo que debemos ingresar nuestro Usuario y clave. Pulsamos OK, y se nos mostrará el cuadro de resumen con todos los cambios hechos:
Pulsamos OK, ya tendremos nuestro repositorio actualizado con los cambios hechos.
Podemos verificarlos con nuestro icono tesis con la tilde verde nuevamente.
Eso es todo por ahora, espero que les sirva.
Saludos.
Excelente articulo, me ha servido muchisimo para probar un software de control de versiones. Mil Gracias.
muchas gracias. me has ayudado para un proyecto de traduccion gradoooooote!!!!
Como hago para ver las otra versiones?
Excelente , muy buen articulo muy bien explicado paso a paso.
Cielos es un sw de pelos, esta en mi PC ahora jojojo.
Muchas Gracias.
Muy util y muy gratis!
Excelente artículo, te felicito y te agradezco por que me sirvió muchísimo.
Saludos!!!
Muy bueno che, me sirvio!!
pero tuve varios problemas con el tortoise, porque no me permitia comitear los cambios… busque y busque… y no encontre solucion… instale y desinstale… lo estoy usando para un proyecto de eclipse.
Saludos
Alguien sabe información de alguna pagina o foro donde se encuentran herramientas para aplicar Gestores de cambio pero aparte de los versionadores, ya sea promociones para acatualización de software aplicativos y/o configuraciones de los sistemas operativos wintel y unix/linux. Por ejemplo se que los bancos aplican ese tipo de herramientas.
a ver si alguien conosco del tema
Saludos.
Buen Día tengo un duda por donde puedo mirar las versiones anteriores de los documentos o donde queda el log de las modificaciones que se han hecho.
Hola!!como puedo saber quien hizo las modificaciones??
gracias.
tengo la misma duda de DIANA donde veo las versiones anteriores del documento