Abro este hilo para resolver dudas de uso del SVN.
Cómo uso SVN? El primer paso es conseguir una aplicación que nos permita usar el svn. Hay muhcas opciones. La oficial es una aplicación de línia de comandos, pero no os la recomiendo.
Podeis mirar las que hay, pero yo os recomiendo que useis el TortoiseSVN.
El TortoiseSVN se integra en el explorador de Windows y lo podemos hacer todo con el botón derecho.
Cómo me bajo el código? La primera vez que empezamos a trabajar en un proyecto hay que bajarse el código. A eso se le llama checkout. Así que lo primero que haremos será hacer un checkout.
Si teneis el tortoise lo teneis en pulsando el botón derecho en una carpeta de windows.
Para bajar el código de perfectraw hay que poner en la dirección del proyecto:
https://perfectraw.googlecode.com/svn/trunk/ si somos usuarios registrados del proyecto
http://perfectraw.googlecode.com/svn/trunk/ si no los somos
Esto nos bajará el código y ya podremos compilar y probar.
Flujo de trabajo Voy a explicar un poco cómo trabajar.
Lo primero que haremos al empezar a trabajar es hacer un Update. Esto nos bajará los últimos cambios que se hayan hecho.
Ahora trabajamos y vamos modificando ficheros.
Una vez hayamos terminado de trabajar debemos subir el código al servidor. Para hacer eso haremos un Commit. Al hacer un commit nos pide que pongamos un comentario. Es muy importante poner el comentario para saber porque se hace cada modificación.
Yo os recomiendo ir subiendo con frequencia, siempre que hagamos una modificación y la terminemos. Es importante que al subir alguna cosa el programa siga funcionando, que se pueda compilar. Ya que si subimos alguna cosa a medias dejamos a todo el mundo parado.
Concurrencia Una cosa importante de svn es que no nos tenemos de preocupar de que dos usuarios esten trabajando sobre el mismo fichero. Al hacer update el svn se encarga de mezclar los cambios de los diferentes usuarios. Con lo que no tenemos que ir bloqueando ficheros
Sólo nos dará problemas si dos usuarios han modificado las mismas líneas de código a la vez, en este caso no dirá que hay conflictos y tendremos que solucionarlos (ya veremos en su momento cómo lo hacemos).
Esto es lo básico. En otro momento os explico revert, show log, branch, merge, ...
Viendo cómo va la cosa me parece que tengo que explicar un par de cosas mas (hablo usando el tortoise svn, pero supongo que con otros programas será parecido):
Nuevos ficheros Si añadimos algun fichero al proyecto, por defecto no se añaden al svn. Hay que ir al fichero y usar la opción Add (esto le dice al svn que la proxima vez que hagamos commit suba ese fichero también).
Borrar ficheros Cómo en el punto anterior, si borramos un fichero hay que usar la opción Delete del svn, si lo borramos desde el explorador de archivos no lo borrará del servidor.
Mover o renombrar archivos o carpetas Este es el punto mas delicado. No hay que moverlos/renombrarlos con el explorador de windows. Si usamos el tortoise svn, tiene una opción par renombrar un archivo/carpeta. Si queremos mover archivos/carpetas lo hacemos usando el botón derecho del mouse y al soltar el tortoise svn nos da la opción de mover los archivos versionados.
La verdad es que al principo uno se puede liar mucho.
Espero que con el tiempo vayamos aprendiendo.
Vertex:
efectivamente hay algún lio con el uso de svn.
Ahora en el svn hay una versión que funciona.
Yo en mi ordenador tengo otras versiones y cambios de ficheros y demás que no coincide con la organización del svn (pues se ha cambiado mucho la estructura de directorios).
¿Cómo me aseguro de descargar la última versión de un directorio del svn eliminando todo lo que esté en mi ordenador y sustituyéndolo por lo del svn?
Si borro el directorio, tengo miedo que luego borre cosas en el svn.
He hecho un update pero no me ha eliminado muchos ficheros ni otros que no estaban bajo subversion.
Lo mejor es que te bajes una nueva copia en otro directorio y copies los ficheros que tengas modificados encima de los existentes. Así nos aseguramos que no tienes problemas.
Luego ya puedes empezar a trabajar en el otro directorio (puedes borrar el original).
Tranquilos todos, que no hay ningún problema si haceis un desastre, se puede deshacer, esa es la gracia del svn.
Marcadores