0% encontró este documento útil (0 votos)
36 vistas44 páginas

MANUALDESUBVERSION

Este documento es un tutorial sobre la instalación y configuración del sistema de control de versiones Subversión (SVN) en Windows, incluyendo la instalación de Apache como servidor. Se detalla el proceso de instalación, creación de un repositorio y configuración de autenticación para el acceso al mismo. Además, se incluye información sobre la integración de Eclipse con Subversión para facilitar el desarrollo.

Cargado por

leonardo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
36 vistas44 páginas

MANUALDESUBVERSION

Este documento es un tutorial sobre la instalación y configuración del sistema de control de versiones Subversión (SVN) en Windows, incluyendo la instalación de Apache como servidor. Se detalla el proceso de instalación, creación de un repositorio y configuración de autenticación para el acceso al mismo. Además, se incluye información sobre la integración de Eclipse con Subversión para facilitar el desarrollo.

Cargado por

leonardo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

DATAiFX.

COM

INSTALACIÓN DE SUBVERSION (SVN)

FEBRERO 2010

Elaborado por:
Luz Adriana Camargo Carvajal
INTRODUCCION

Este artículo es un tutorial del sistema de control de versiones Subversión. Se


incluyen ejemplos para Windows.

Contiene toda la información necesaria para instalar, usar, administrar, y


desarrollar Subversión.

Sistemas de control de versiones

Un sistema de control de versiones es un software que administra el acceso a


un conjunto de ficheros, y mantiene un historial de cambios realizados. El
control de versiones es útil para guardar cualquier documento que cambie con
frecuencia, como una novela, o el código fuente de un programa.

Normalmente consiste en una copia maestra en un repositorio central, y un


programa cliente con el que cada usuario sincroniza su copia local. Esto
permite compartir los cambios sobre un mismo conjunto de ficheros. Además,
el repositorio guarda registro de los cambios realizados por cada usuario, y
permite volver a un estado anterior en caso de necesidad.

¿Por qué son necesarios?

Supongamos que estamos haciendo un programa de cierto tamaño en


colaboración con otra persona. Lo más primitivo es compartir cambios usando
ficheros comprimidos. Pero este sistema es propenso a errores: ¿estamos
enviando todo el código?, ¿estamos sobrescribiendo algún cambio?, ¿que
ficheros debemos actualizar?, ¿quien tiene la versión maestra del código?

Todos los sistemas de control de versiones tienen ciertas características que


acaban con estas preocupaciones. Esto es lo que aporta un sistema de control
de versiones a un equipo:

¾ Actualiza ficheros modificados. El cliente recorre nuestro código y


sincroniza nuestra copia local con el repositorio.

¾ Historial de cambios. El repositorio guarda registro de todos los cambios


realizados. Es posible recuperar cualquiera de las versiones anteriores
de cualquier fichero. Si alguien borra todos los ficheros, podemos volver
atrás y recuperar su contenido.
¿Por qué SVN?

Subversión es un software de sistema de control de versiones diseñado


específicamente para reemplazar al popular CVS, el cual posee varias
deficiencias. Es software libre bajo una licencia de tipo Apache/BSD y se le
conoce también como svn por ser ese el nombre de la herramienta de línea de
comandos. Una característica importante de Subversión es que, a diferencia de
CVS, los archivos versionados no tienen cada uno un número de revisión
independiente. En cambio, todo el repositorio tiene un único número de versión
que identifica un estado común de todos los archivos del repositorio en cierto
punto del tiempo.

Si eres desarrollador seguramente conocerás CVS. Se emplea en la mayoría


de proyectos comerciales, y prácticamente en todos los de código abierto. Pero
últimamente se habla de un sustituto de CVS. La fundación Apache por
ejemplo, ya permite que sus proyectos migren a Subversión.
INSTALACIÓN

La distribución de Subversión incluye un cliente remoto (svn), un servidor


(svnserve), y varias utilidades. En este documento se ilustra el uso de Apache
como servidor porque permite más posibilidades que svnserve.

INSTALACION DEL APACHE

Lo primero que hay que hacer es instalar el servidor Web; en nuestro caso
instalaremos apache en su versión para Windows.

Apache es un servidor open source, y el más usado por los servidores en todo
Internet, podrás encontrar toda la información sobre Apache en su página Web:
[Link] (en inglés por supuesto), pero en principio a nosotros lo
que más nos interesa es bajarnos el programa en sí, lo podrás bajar de la
siguiente dirección: [Link]

Bien, una vez bajado el Apache lo que tenemos que hacer es instalarlo; estos
son los pasos a seguir:

1. Una vez bajado le damos caña al ejecutable (doble clic) y nos aparece la
siguiente ventana:

2. Después de habernos leído la licencia del Apache (abstenerse de


comentarios) y haber selecciona la casilla de aceptación (I accept the
terms in the licence agreement), hacemos clic en el botón next,
apareciendo la siguiente ventana:

3. Saldrá otra ventana de leer y haces clic en el botón next, apareciendo


esta otra ventana:
4. En la siguiente ventana, nos aparecerá un cuadro de dialogo con
algunas opciones, las cuales son:

•Network Domain
• Server Name
• Administrator`s Email Address

Y después otras dos opciones

• For all Users, on Port 80, as Service – Recommended


• Only for the Current User, on Port 8080, when started Manually.

A las 3 primeras opciones, es donde debes especificar, el nombre del dominio,


es nombre del servidor (ServerName), y un email que tendrá por default
Apache, aunque yo les recomiendo, configurarlo en el archivo de configuración
que tiene apache ([Link]), por eso vamos a dejarlo como lo muestra en la
grafica.

En las dos opciones restantes, simplemente nos dice en que puerto queremos
que corra apache, es muy recomendable dejarlo como esta (en el puerto 80), a
menos que tengamos otro servidor corriendo en ese puerto (IIS o Tomcat por
ejemplo), también se pude modificar desde el [Link].
5. En la siguiente ventana escogemos instalación typical y seguimos.

6. Escogemos el directorio de destino, donde quedará el servidor apache


instalado y continuamos hasta que termine la instalación.
INSTALACIÓN DE SUBVERSION

Puedes encontrar paquetes para Windows, Debían, RedHat, SuSE, Mandrake,


pkgsrc ({Net,Open,Free}BSD, Linux, Solaris, etc.), Solaris, y OSX, a través de
la página [Link]

Aquí se describe la instalación en Windows. Tras este paso podremos usar


Subversión. Más adelante activaremos el acceso HTTP que nos permitirá
compartir el repositorio con otros desarrolladores, y acceder con programas
que usan este protocolo (Eclipse).

1. Descargue la última versión de los binarios de Subversión para Apache


y Windows 32. Asegúrese de obtener la versión correcta para integrarla
en su versión de Apache, porque si no obtendrá un oscuro mensaje de
error cuando intente reiniciar. Si tiene Apache 2.2.x acuda a
[Link]
2. Una vez descargado, comenzamos la instalación.

3. Saldrá otra ventana de leer y haces clic en el botón Next, apareciendo


esta otra ventana:
4. Después de habernos leído la licencia del Subversión, hacemos clic en el
botón Next, apareciendo la siguiente ventana:

5. Si el instalador de Subversión reconoce que ha instalado Apache, habrá


casi terminado.
6. Saldrá otra ventana en el cual se seleccionara el fichero donde desea
guardarlo y haces clic en el botón Next, apareciendo esta otra ventana y así
sucesivamente hasta terminar la instalación de la aplicación:
7. Vamos al directorio de instalación de Subversión (normalmente
C:\Archivos de programa\Subversion\bin\) y busque los ficheros
mod_dav_svn.so y mod_authz_svn.so, [Link]. Copie estos ficheros
al directorio de módulos de Apache (normalmente C:\Archivos de
programa\Apache Group\Apache2\modules).
8. Vamos al directorio de instalación de Subversión (normalmente
C:\Archivos de programa\Subversion\bin\) y busque los ficheros
/bin/libdb*.dll y intl3_svn.dll. Copie estos ficheros al directorio de
módulos de Apache (normalmente C:\Archivos de programa\Apache
Group\Apache2\bin).

CREAR UN REPOSITORIO

El repositorio es el árbol de directorios donde Subversión almacena nuestros


ficheros y cambios.

Para crear un repositorio vacío usamos la herramienta de administración


svnadmin:

1. Abrimos pues una ventana de símbolo de sistema, nos situamos en el


directorio en el cual queremos crear el repositorio en Windows quiero
crearlo en c:\repositorio, así que me pongo en c:\ y ejecuto:

svnadmin create repositorio

A continuación como muestra la imagen


2. Ya tenemos creado el repositorio. Debería tener una estructura similar a
ésta (puedes verlo tecleando >> dir /B /S repositorio):
CONFIGURAR APACHE

1. Edite el fichero de configuración de Apache (normalmente C:\Archivos


de Programa\Apache Group\Apache2\conf\[Link]) con un editor de
texto como el Bloc de Notas y haga los siguientes cambios:

Descomente (quitando la marca '#') las siguientes líneas:

#LoadModule dav_fs_module modules/mod_dav_fs.so


#LoadModule dav_module modules/mod_dav.so

Añada las dos líneas siguientes al final de la sección LoadModule.

LoadModule dav_svn_module modules/mod_dav_svn.so


LoadModule authz_svn_module modules/mod_authz_svn.so

2. Suponiendo que nuestro repositorio este en C:\repositorio ponemos esto


al final de [Link]:

<Location /repos>
DAV svn
SVNPath c:/repositorio
</Location>

3. La directiva Location de Apache asocia el bloque que contiene a una


URL determinada. Aquí por ejemplo, la configuración del módulo
dav_svn queda asociada a la dirección
[Link]
4. Ya está todo listo para que funcionen SVN y Apache. Reinicia el servidor
Apache para que los cambios en el [Link] se hagan efectivos y
comprueba el correcto funcionamiento. Para ello abre una ventana de
explorador de Internet y teclea [Link] Te
tendrá que salir algo similar a esto:
CONFIGURACIÓN DE AUTENTICACIÓN PARA ACCESO AL REPOSITORIO

Nota: usualmente no es necesario que todos los usuarios tengan acceso a


todos los repositorios. Usando ACL’s (Listas de Control de Acceso), es posible
restringir el acceso a los repositorios por usuario. Las ACLs pueden ser
habilitadas en el archivo especificado en la opción AuthzSVNAccessFile, la
cual toma un nombre de un archivo como su parámetro. Esta opción debe
agregarse en dentro de la entrada Location utilizada anteriormente en este
laboratorio. Una ACL por defecto niega el acceso de los usuarios al
repositorio.

1. Crear una carpeta en la ubicación donde esta creado el repositorio, en el


cual se le colocara el nombre de etc y será un subdirectorio del
repositorio. Debe tener en cuenta la ruta exacta del directorio creado
para los siguientes puntos.

• Esta carpeta contendrá los archivos con las claves de usuarios y


las ACL’s.

2. Una vez creada la carpeta etc, creamos un archivo dentro de la carpeta


en formato de block de notas y lo guardamos con el nombre
[Link].

3. Abrir un consola de comandos y ubicarse en el subdirectorio bin de la


carpeta donde quedo instalado el servidor apache C:\Archivos de
Programa\Apache Group\Apache2

• Podría agregarse la ruta completa del directorio bin a la varieble


entorno path.

4. Ejecutar el comando

• htpasswd –cm c:/repositorio/etc/[Link]


Leonardo

• Este commando crea un archivo de contraseñas


([Link]) que queda guardado en el directorio
creado en el paso No 1 de esta tarea (para el caso del
Laboratorio c: /repositorio/etc/). El login del usuario es
userTest1. Las contraseñas quedarán encriptadas bajo
MD5.
5. Si se ah ejecutado adecuadamente el paso anterior, deberá solicitarse el
ingreso de una contraseña tal como se presenta en la figura.

6. Utilice nuevamente el comando htpasswd para crear un nuevo usuario


llamado repositorio, pero esta vez en lugar de usar la opción –cm sólo
necesita usar la opción –m, de igual forma a como se describe en la
siguiente figura:

Creación primer usuario creación segundo usuario

• Al final del procedimiento, en la carpeta creada en el paso 1 de


esta tarea, deberá quedar un archivo similar al que se presenta
en la figura.

7. Creación de la ACL - Abrir un editor de texto y escribir las líneas que se


indican a continuación

[/]
userTest1 = rw
userTest2 = r
• Guardar este archivo con el nombre de [Link],
ubicándolo en la carpeta creada en el paso 1 de esta tarea.

• Nótese que la opción [/] indica que se hace accesible todos los
repositorios. Si se requiere acceder a un proyecto específico
almacenado en el repositorio (como se a creado en el repositorio), el
nombre del mismo deberá estar dentro de los corchetes ([]). A
continuación vienen los usuarios (creados en los pasos 5 y 6), con sus
respectivos permisos (R lectura, W escritura)

8. Editar el archivo de configuración de Apache ([Link]) siguiendo el


procedimiento utilizado en el paso 2 de la configuración del apache. Una
vez abierto el editor de texto, ubicarse al final del archivo, justo donde se
encuentra la entrada Location, y agregar las siguientes líneas.

<Location /repos>
DAV svn
SVNPath c:/repositorio

AuthType Basic
AuthName "Acceso al Repositorio"

AuthUserFile C:/svn‐rep/etc/[Link]

AuthzSVNAccessFile C:/svn‐rep/etc/svn‐[Link]

Require valid‐user

</Location>

• De tal forma que quede similar a la siguiente figura


Nombre del acceso al
repositorio
Ruta archivo de
Usuarios y claves

Ruta Archivo
ACL creado

• Recordar que se utiliza la ruta completa de los archivos, los


cuales fueron copiados al directorio creado en el paso 1 de esta
tarea (C: /repositorio/etc para este caso)

• Guardar los cambios realizados al archivo de configuración de


Apache.

9. Iniciar el servidor Apache, (o reiniciarlo si ya estaba en


ejecución).

10. Abrir un navegador e ingresar la dirección


[Link] deberá aparecer una ventana
para ingreso de usuario y contraseña, similar a la de la figura

• Ingrese un usuario y contraseña que fue creado en los pasos 5


y 6 de esta tarea.

• Deberá acceder al repositorio desde el navegador y explorar el


contenido de los proyectos registrados.
INSTALACIÓN Y CONFIGURACIÓN DE ECLIPSE PARA SUBVERSION

Junto con este manual se adjunta la última versión hasta el día de hoy del
Eclipse (Galileo) para poder utilizar el framework. De todas formas se puede
bajar de Internet del sitio [Link]

Como se muestra en la siguiente imagen.


1. Una vez descargado, comenzamos la instalación

2. Procedemos a dar una ubicación en el Eclipse SDK de tiendas de sus


proyectos en una carpeta llamada workspace.
Elija una carpeta de área de trabajo a utilizar para esta sesión.
3. Una vez abierto el eclipse procedemos a ir a Help y vamos a la opción
install new software y damos clip.

4. una vez abierta la ventana procedemos a dar clip add hay nos saldrá
otra ventana, que nos permitirá add site y adicionar la direccion para
descargar el plugin para tu version de Eclipse, hay procedemos a dar un
Name y una location, como se muestra en la imagen, por ejemplo Name
: Subclipse y Location: [Link]
5. Una vez ingresado Name y Location damos clip en ok, hay nos
procedera a la ventana principal de install, en esa misma ventana
seleccionamos work with y buscamos lo que acabas add site, lo dejamos
seleccionado y el procedera a buscar los archivos del sitio, una vez
buscado los archivos los seleccionamos damos clip en Next y la
siguiente ventana damos Next.
6. Aceptamos el acuerdo de licencia.
7. Una vez aceptado el acuerdo de licencia saldrá un letrero que se
reiniciara el eclipse.
8. Una vez iniciado el eclipse de nuevo, vamos a window, una vez abierta
la opción, buscamos open perspective y vamos a other y damos clip.
9. Una vez abierta la venta other, saldra una ventana llamada open
perspective, seleccionamos SVN Repository Exploring, damos clip en
OK.
10. Una vez abierta la ventana SVN Repository Exploring, procedemos a
crear un SVN Repository Exploring, damos clip derecho en New, y
saldra un pestaña que dice Repository Location, hay inmediatamente
saldra una ventana de add SVN Repository, en esa misma ventana
escribimos la url, del servidor en nuestro caso sera
[Link] y damos finish y hay quedar creado
nuestro repositorio y nos mostrara todos los proyectos que están en el y
procedemos a exportarlo como lo muestra en el paso 13, en el caso de
que no haya ningún proyecto procedemos al paso 11.

11. Procedemos crear un proyecto para colocarlo entre el SVN Repository


Exploring, entonces vamos en la parte derecha de arriba y buscamos un
cuadro que se llama Java, damos clip derecho new y procedemos a ir a
java Project, una vez sale el cuadro de crear un Project damos un
nombre y finalizamos, después de haber creado el proyecto procedemos
a crear una clase, como muestra en las imágenes.
12. Una vez creado el proyecto procedemos hacer el SVN Repository
Exploring, entonces seleccionamos el proyecto damos clip derecho y
buscamos Team y damos clip en la opción Share Project, y hay saldrá
una ventana Share Project, se selecciona SVN, damos clip en Next, hay
procederá a salir otra ventana con el nombre de la url
[Link] lo seleccionamos y damos clip en
next, después te saldrá otra ventana con el nombre enter fólder name,
dejamos todo tal cual como sale, damos clip en Next, y por ultimo saldrá
la ultima ventana que es donde se finaliza todo con el SVN Repository
Exploring, y el proyecto quedara en el repositorio.
13. Cuando existe algún proyecto en el repositorio damos clip derecho new
y buscamos la opción other, hay saldrá una ventana en el cual se
seleccionara la carpeta SVN con su respectiva opción que es checkout
Project from SVN, damos la opción Next y hay nos sale la opción
creation location, seleccionamos el repositorio que creamos y damos clip
en Next, después saldrá una ventana con el repositorio y el proyecto que
hay dentro y damos clip en Next, saldrá una ventana de check out,
damos clip en Next y saldrá la ultima ventana para finalizar y traer el
proyecto del repositorio y hacer los respectivos cambios al proyecto.

También podría gustarte