Eclipse con SVN 
Tags: controldeversiones, svn, eclipse, spanish
Published: 2020-03-11 19:08:43

Hola a tod@s, en este post voy a intentar explicar cómo usar el sistema de control de versiones Subversion (SVN) con el IDE Eclipse, para ello vamos a usar el plugin Subversive, vamos a ello.


## Pasos para la inslación
* [Inslación del plugin](#paso-1)
* [Instalación de SVN Connectors](#paso-2)

### Inslación del plugin <a name="paso-1"></a>

Primero vamos a instalar el plugin, para ello vamos a seguir estos pasos:

Lo primero que debemos hacer es abrir Eclipse, en nuestro caso estamos usando Eclipse Mars.2 Release (4.5.2). 

Una vez abierto, nos dirigiremos a la siguiente ruta: **Help>Install New Software...** y en el botón **Add...**. Nos aparecerá una ventana donde se nos pedirá un nombre y una localicación.

En el cuadro de texto de Nombre pondremos el nombre que queramos, por ejemplo, Subersive Plug. En la Localización debemos poner la siguiente URL:
<code>http://download.eclipse.org/technology/subversive/4.0/update-site/</code>

![Captura1](https://i.ibb.co/HVBHRWp/Captura1.png)

Una vez hecho esto le daremos a **OK**, empezará a buscar los recursos solicitados y a continuación nos mostrará el software disponible, marcaremos todas las casillas y le daremos a **Next >**:


![Captura2](https://i.ibb.co/Wpyqzwk/Captura2.jpg)


Empezará a cargar las dependencias del software que hemos solicitado que instale, volveremos a darle a **Next>** y aceptaremos el acuerdo de licencia y le finalizamos, el proceso empezará a instalar el software que hemos pedido que instale, puede tardar algunos minutos en finalizar.

Puede que nos salte un mensaje como este:

![Captura3](https://i.ibb.co/PCDqYnR/Captura3.jpg)

Advirdiendonos de que estamos instalando software que no tiene contenido firmado, le daremos a **OK** para continuar con la instalación. Por último nos pedirá reinicar Eclipse, le daresmo a **Yes** para que lo haga.

Si todo ha salido bien después de que se reinicie Eclipse nos aparecerá una pantalla de bienvenida como esta:

![Captura4](https://i.ibb.co/mXd9Hbt/Captura4.jpg)

Simplemente la cerramos y seguimos con el siguiente paso.

### Instalación de SVN Connectors <a name="paso-2"></a>

Ahora nos toca instalar los conectores entre Eclipse y SVN, para ello nos dirigimos a **Windows>Preferences** en la ventana que nos abre, vamos a **Team>SVN** y luego damos clic en la pestaña que dice **SVN Connector**:

![Captura5](https://i.ibb.co/hCQFWRB/Captura5.jpg)

Una vez estemos en la pestaña le daremos clic en el botón que dice **Get Connectors...** de las tres opciones que nos permite elegir, yo elegí la primera, **SVN Kit 1.8.14**.

![Captura6](https://i.ibb.co/51KCQnW/Captura6.jpg)

Le daremos a **Finish** y empezara a buscar los recurosos, en el proceso nos mostrará una ventan como la siguiente:


![Captura7](https://i.ibb.co/sWgyB60/Captura7.jpg)

Marcamos ambas opciones y continuamos, aceptamos el acuerdo de licencia y si nos aparece una ventana advirtiéndonos de que estamos instalando software no firmado le daremos a OK para que continúe el proceso de instalación. Cuando acabe nos pedirá reiniciar Eclipse, le daremos a Yes y esperamos a que se reinicie. 

Para comprobar que todo ha ido bien, volvemos a la pantalla de la ventana de SVN Connector y comprobamos que ahora nos aparece el que hemos instalado:

![Captura8](https://i.ibb.co/71TQvLP/Captura8.jpg)

Bien ahora ya estamos listos para crear nuestro repositorio (en este caso de manera local).


## Creando nuestro primer repositorio
* [Crear repositorio](#paso-3)
* [Vincular proyecto con el repositorio](#paso-4)

### Crear repositorio <a name="paso-3"></a>

Para crear nuestro primer resposirorio nos dirigimos a **Windows>Perspective>Open Perspective>Other...** se nos mostrará una ventana con las posibles vistas, en este caso vamos a elegir **SVN Repository Exploring**.

![Captura9](https://i.ibb.co/bdWkjdr/Captura9.jpg)

En la vista que nos aparece a la izquierda le vamos a dar con el botón derecho del raton para elegir la opción de crear nuevo repositorio:

![Captura10](https://i.ibb.co/qrCCwt7/Captura10.jpg)


En la siguiente ventana nos pedirá la ruta donde queremos que se cree nuestro repositorio, elegimos la que nos convenga y le daremos a **OK**

![Captura11](https://i.ibb.co/ckCwq44/Captura11.jpg)

Esto nos creará el repositorio en la ruta expecificada, ahora en la perspectiva de explorador de repositorios nos aparecerá lo que hemos creado:

![Captura12](https://i.ibb.co/BfcTmVb/Captura12.jpg)

### Vincular proyecto con el repositorio <a name="paso-4"></a>

Ahora vamos a vincular un proyecto que tengamos creado con nuestro repositorio, de esta forma podemos hacer uso de sus funcionalidades.

Para esto nos vamos a la perspectiva de Java donde podamos observar los proyectos que tengamos creados, elegimos alguno que queramos vincular con el repositorio y haremos clicl derecho encima del nombre del proyecto y daremos clic en **Team>Share Project..

![Captura13](https://i.ibb.co/60fH4yK/Captura13.jpg)

En la ventana que nos abrirá debemos elegir el tipo de repositorio, esta vez vamos a legir SVN.

![Captura14](https://i.ibb.co/zJVv9hJ/Captura14.jpg)

Le damos clicl a Next y en la siguiente ventana nos aparecerán los repositorio que hayamos creado, es este caso me aparece sólo el que hice antes, elegimos nuestro repositorio y le damos a Next.

![Captura15](https://i.ibb.co/LZppx4n/Captura15.jpg)

Le daremos a siguiente hasta que nos aparezca una ventana como esta:

![Captura16](https://i.ibb.co/YTygKLD/Captura16.jpg)

En esta ventana enviaremos nuestro primer commit al vincular nuestro proyecto con el repositorio.

Le daremos a Finish y se mostrará una ventana para instroducir otro commit, pondremos lo que creamos conveniente y le daremos a OK.

![Captura17](https://i.ibb.co/NKf0Wjz/Captura17.jpg)

Ahora podemos ver como en nuestro explorador de proyectos, el proyecto que hemos vinculado aparece de la siguiente forma, indicando que todo ha ido como esperábamos.

![Captura18](https://i.ibb.co/jRv1DFW/Captura18.jpg)


## Probando SVN una vez instalado y configurado 

Vamos a realizar unas pruebas para entender un poco del funcionamiento de este sistema de control de versiones.

En la siguiente imagen podemos ver que hemos hecho una modificación en código fuente de una clase que estaba en el proyecto, como podemos ver en el explorador de proyectos, el proyecto Trimestre3 aparece con el símbolo > a la izquierda del nombre, esto quiere decir que hemos guardado una modificación en el proyecto pero aún no la hemos subido al repositorio.

![Captura19](https://i.ibb.co/5Yq5n4Y/Captura19.jpg)

Bueno ahora vamos a darle a con el botón derecho encima del nombre de nuestro proyecto, y a cotinuación a **Team>Synchronize with Repository.**

![Captura20](https://i.ibb.co/JjXRqkh/Captura20.jpg)

Se nos pedirá aceptar que vamos a cambiar de perspectiva y le damos a Yes, en la nueva vista que se nos abrirá le daremos clic en la flecha amarilla donde dice *Next Difference* y podremos ver y comparar las modificaciones hemos realizado con el fuente subido previamente al repositorio.

![Captura21](https://i.ibb.co/KykHWk2/Captura21.jpg)

Como vemos en la imagen nos resalta las línea de código donde hay diferencias, en este ejemplo sólo hicimos una modificación, que fue añadir un simple comentario en la línea 79.

Ahora vamos a ver cómo subir los cambios a nuestro repositorio. 

Para ello le daremos clic con el botón derecho a nuestra clase donde hemos realizado un modificación y pulsaremos en **Commit...** (La opción de Update la usaríamos para el proceso inverso, es decir, para resturar la versión que tengamos en el respositorio), lo vemos en la siguiente imagen:

![Captura22](https://i.ibb.co/LZd0scY/Captura22.jpg)

En la ventana que se nos abre pondremos un comentario al Commit que estemos enviando a guardar en el repositori y le daremos a **OK**.

![Captura23](https://i.ibb.co/3zLC9SH/Captura23.jpg)

Si cerramos la vista actual y nos vamos a la vista de **SVN Repository Exploring** y el damos clic derecho en el nombre del ropositorio y elegimos la opción **Show History** tal y como se muestra a continuación:

![Captura24](https://i.ibb.co/TMb23NB/Captura24.jpg)

Podemos ver el historial de las distintas versiopnes que hayamos subido al repositorio, ordenadas numéricamente:

![Captura25](https://i.ibb.co/Lpq3KRv/Captura25.jpg)

Si le damos clic en la versión actual podemos ver abajo los cambios que ha sufrido en esa versión, en este caso la modificación del archivo *Arrays_1.java*, si le damos clic derecho a dicho archivo y elegimos la opción **Compare with Previous State**, como vemos a continuación:

![Captura26](https://i.ibb.co/rcYFRxB/Captura26.jpg)


Podremos volver a ver las diferencias con respecto a la versión anterior, tal y como vemos en la siguiente imagen:

![Captura27](https://i.ibb.co/pWzxNcJ/Captura27.jpg)

Si queremos comparar la última versión con otra, por ejemplo la primera, en el explorador de respositorio, le damos clic derecho en el nombre de nuestro proyecto luego a Compare **With>URL...** en la ventana que se nos abre elegimos **Revison** y damos clic en **Browse...**

![Captura28](https://i.ibb.co/2Yvs4pd/Captura28.jpg)

Después en la ventana que se nos abre elegimos la versión con la que queramos comprar, en mi caso la Rev 2 y le damos a **OK**:

![Captura29](https://i.ibb.co/Sdd8wP3/Captura29.jpg)

En la siguiente ventana dando doble clic en el nombre del fuente java nos abrirá la vista donde podemos ver la diferencias entre la Rev 4 y la Rev 2 que hemos elegido, como se pude ver en la siguiente imagen son 2 comentarios de prueba.

![Captura30](https://i.ibb.co/jTgfkrv/Captura30.jpg)

Si queremos volver desde nuestra perspectiva de Java a alguna versión anterior, podemos hacer lo siguiente: 

Damos clicl derecho  en el nombre de la clase que queramos revertir, y elegimos **Team>Update to Revision...**  como vemos en la siguiente imagen:

![Captura31](https://i.ibb.co/0nNqPYP/Captura31.jpg)

Luego en la ventana que se nos abre elegimos el número de la revesión a la cuál queremos volver y le damos a OK, en mi caso he elegido la Rev 2 donde no existían los comentario que añadí posteriormente.

![Captura32](https://i.ibb.co/QJDQQ8w/Captura32.jpg)

Por último como vemos en la siguiente imagen hemos vuelto al estado donde no existían esos comentarios:

![Captura33](https://i.ibb.co/xhqFSM9/Captura33.jpg)

Y eso eso es todo por ahora con respecto a Subersion y Eclipse. Como siempre, sugerencias, correciones serán benvenidas =).

Pagina de interés: <code>https://www.eclipse.org/subversive/installation-instructions.php</code>