Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Como Usar Subversion
Como Usar Subversion
Creado por: Mariano Szklanny Fecha de creacin: Domingo, 04 de Septiembre de 2005 Revisin: 1 ltima modificacin: Sbado, 10 de Septiembre de 2005
Mariano Szklanny
ndice
Cmo usar Subversion ............................................................................................ 1 ndice................................................................................................................... 2 Crditos ............................................................................................................... 3 Instalacin ........................................................................................................... 4 Comienzo: bajando el proyecto .......................................................................... 4 Trabajar con el proyecto ..................................................................................... 7 Agregar Archivos o Carpetas............................................................................ 11 Eliminar Archivos o Carpetas........................................................................... 12 conos................................................................................................................ 12 Cosas tiles ....................................................................................................... 13 Acceso Web ...................................................................................................... 13 Links ................................................................................................................. 13
Mariano Szklanny
Crditos
Este documento fue confeccionado por Mariano Szklanny. Sos libre de distribuirlo siempre y cuando no modifiques el archivo original, y especficamente dejes intacta esta seccin de crditos. Mariano Szklanny - FlaShMaN: mszklanny@hotmail.com.
Mariano Szklanny
Instalacin
Para poder usar Subversin fcilmente, hay que bajar e instalar el TortoiseSVN, el cual se integra con el Explorador de Windows. Para bajarlo: ir a http://tortoisesvn.tigris.org/download.html y bajar el archivo Official version for Win2k/XP. Bajar la ltima versin con extensin .msi (instalador).
Mariano Szklanny
3. En la ventana que se abre, ingresar en URL of repository la URL del Repostorio y el resto dejarlo como est (Asegurarse que HEAD Revision est seleccionado para obtener la ltima revisin). Hacer click en OK.
Mariano Szklanny
4. A continuacin aparecer una ventana pidiendo un usuario y contrasea. Ingresar los datos que correspondan.
5. Si todo fue bien, debera aparecer una lista de los archivos y carpetas bajadas. 6. Hacer click en OK y notar que se cre la estructura de carpetas y los archivos correspondientes.
Mariano Szklanny
2. Hacer cambios: se trabaja normalmente sobre los archivos. Por ahora consideremos solamente la edicin de archivos, no as el agregado o borrado (para eso ver la seccin Agregar archivos o carpetas). Aclaracin: los cambios no se vern vern reflejados en el repositorio sino hasta que se haga Commit (paso 4). Es decir, por ms que se editen archivos, nuestros cambios no sern vistos por nadie ms que nosotros a menos que hagamos Commit. 7
Mariano Szklanny
Importante: En el caso de que suba cdigo fuente, hay que asegurarse que el cdigo compile. Subir cdigo que no compila implica que otras personas trabajando sobre el mismo archivo no puedan compilar su proyecto. 3. Antes de subir los archivos modificados al repositorio, se debe tener en cuenta que probablemente otras personas hayan modificado el mismo archivo que nosotros. Entones, hay que hacer Update sobre todo el proyecto en el cual estuvimos trabajando para obtener los ltimos cambios. Esto no va a borrar nuestros cambios, sino que en el caso ideal- va a hacer un Apareo (Merge) con nuestro archivo local. En el caso en que no se pueda hacer el apareo (porque se modificaron las mismas lneas del archivo), apareer un mensaje de error:
En este caso, tenemos que tomar la decisin sobre qu hacer, ya que Subversin no puede hacerlo por nosotros. Para resolver los conflictos, hay que hacer click derecho sobre cada archivo en conflicto y luego en TortoiseSVN Edit Conflicts. Aclaracin: Cuando hay conflictos se crean nuevos archivos temporales1 , no darle bola.
: En caso que haya conflicto, van a aparecer archivos temporales nuevos en la carpeta donde hubo conflictos. No borrar estos archivos, ya que los usa SVN para poder hacer el Merge. Se borrarn automticamente cuando se haga clic en Mark as resolved. Los archivos son *.rN, siendo N el nmero de versin y .mine la versin actual local. Se pueden mirar esos archivos si queremos realizar el merge a mano. Luego de hacer los cambios en el archivo local, se debe hacer clic derecho y luego Resolved.
Mariano Szklanny
Esto abrir una aplicacin (TortoiseMerge) en la cual aparecer: A la izquierda: el archivo nuevo que acabamos de bajar, que contiene las modificaciones hechas por otros usuarios. A la derecha: nuestro archivo actual. Abajo: el archivo final. El uso de esta aplicacin es bastante intuitivo. Debemos ir mirando uno por uno los conflictos y decirle a SVN con qu lneas nos queremos quedar 2 . Para eso, basta con hacer click derecho sobre la lnea que nos gusta y luego en Use this text block. En el archivo de abajo se puede ver cmo va a quedar el archivo final con los cambios que vayamos haciendo. Una vez que resolvimos todos los conflictos, hay que hacer click en el botn Mark as resolved de la barra de herramientas y guardar los cambios.
En estos casos se supone que uno debe levantar el telfono (o abrir el MSN) y definir con el que hizo los cambios qu versin debe ser la final.
Mariano Szklanny
Con esto estaremos indicndole al SVN que hemos resuelto los conflictos y que nuestro archivo est listo para ser subido al repositorio. 4. Commit: se guardan definitivamente los archivos locales en el repositorio. Antes que nada, record que es condicin necesaria para hacer commit que el cdigo fuente compile. Para eso, hacer click derecho sobre los archivos o carpetas que queramos subir definitivamente y seleccionar SVN Commit. Esto abrir una ventana en la que deberemos ingresar una descripcin sobre los cambios hechos y elegir qu archivos subir. Una vez que se est seguro, hacer click en OK.
10
Mariano Szklanny
Luego de hacer OK aparecer una ventana con los resultados. Es importante asegurarse que no haya mensajes de error. Si hubo errores, probablemente algo sali mal. Si hubo un error, ningn archivo se va a subir, por ms que el error haya sido causado en un solo archivo. Es posible que un error sea out-of-date. Esto significa que la versin del archivo que est en el repositorio es ms nueva que la que nosotros nos bajamos (y por ende sobre la cual trabajamos). En ese caso volvemos al paso 3. Si bien no es necesario suministrar una descripcin de los cambios hechos, hacelo, porque ese comentario va a ser muy til para ubicar versiones anteriores de los archivos y para entender cmo fue evolucionando el proyecto.
11
Mariano Szklanny
En la ventana que se abre, seleccionar los archivos/carpetas a agregar y hacer clic en OK. Si todo fue bien, el cono del archivo tendr un signo ms (+). Esto significa que est marcado para subir, pero que aun no se ha subido en el repositorio. Para subirlo definitivamente, hay que hacer Commit.
conos
Estos conos son los que van a tener los archivos que estn bajo el control de SVN. Es importante conocerlos para saber su estado y qu se debe hacer.
12
Mariano Szklanny
Hay que tener en cuenta que cualquier archivo que no est con el cono tendr diferencias con el archivo que est en el repositorio y se debe tomar una accin correspondiente si queremos ver los cambios reflejados en el repositorio.
Cosas tiles
Dentro del men del TortoiseSVN hay muchas herramientas tiles. Al hacer clic derecho sobre un archivo: Revision Graph: Muestra un grfico con el historial de versiones y permite hacer comparaciones sobre las mismas (diff). Show Log: Muestra un detalle del historial de versiones, permitiendo ver los comentarios, la fecha de la revisin, quin la hizo, etc. Tambin permite ver versiones anteriores y hacer comparaciones. Muy til. Check for Modifications: Lista todas las modificaciones hechas en la carpeta local. Es decir, muestra todo lo que no est actualizado con el repositorio. Update to revision: Carga una versin del archivo que queramos. Cada versin se identifica con un nmero o fecha. Revert: Descarta todos los cambios que hayamos hecho sobre el archivo. til si hicimos cagadas, evita que se actualice el repositorio. Es como un gran undo. Create Patch: Genera un archivo diff con los cambios hechos. til si se quiere mandar a revisar los cambios previo a hacer Commit. Resolved: Cuando un archivo est en conflicto, podemos usar esta opcin para indicarle a SVN que ya hemos resuelto los conflictos a mano.
Acceso Web
El repositorio tambin puede ser accedido desde cualquier navegador web, pero solamente para lectura (no escritura). Pedir al administrador del repositorio la URL.
Links
Si te interesa saber ms sobre el SVN: http://subversion.tigris.org/ - Pgina oficial http://svnbook.red-bean.com/ - Libro de SVN. Muy bueno para sacarle todo el jugo. Incluye administracin de un Server de SVN.
13