Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
Control de Versiones con Google Code y Gambas3
Hola
Finalmente ya está aquí una guía para trabajar con Google Code y SVN a través del interface que proporciona Gambas3.
La verdad es que una vez que te acostumbras a llevar tus proyectos con un sistema de versionado como SVN, Git, etc, luego es difícil dejar de hacerlo por muchas razones. Hablábamos hace tiempo de la necesidad de hacerlo cuando son proyectos grandes en los que participa más de un desarrollador, pero es igualmente útil y eficaz en proyectos medianos o pequeños con un solo programador.
El hecho de usar SVN es porque de momento es la herramienta que soporta Gambas3 y aunque hay sistemas más rápidos y eficaces como Git, desgraciadamente Gambas3 aún no lo incorpora. Antes o después de ver el vídeo es muy conveniente leer algún tutorial online sobre el uso de SVN y los parámetros de la linea de comandos, ya que no me puedo extender en explicarlo todo en el vídeo (que por cierto es mas largo de lo esperado).
Espero que se entienda todo lo que trato de transmitir, pero si alguno tiene dudas, podemos continuar hablando en este mismo hilo, no en el sistema de mensajes de youtube, que es muy incómodo. Mi recomendación es que veáis el video en youtube a pantalla completa, ya que está en HD.
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
Re: Control De Versiones Con Google Code Y Gambas3
Jguardon:
Estupendo video!!!
Te ha quedado muy claro... me lo pongo en mis favoritos..
Algunos comentarios:
Proyectos ya inciados:
Tambien he conseguido hacerlo con proyectos que ya estaban iniciados (en el video comentas como hacerlo en un proyecto nuevo)...
Usando la terminal...
1) Vas a la carpeta donde vas a guardar las versiones, en mi caso este "/home/uno/Gambas3/"
$cd /home/uno/Gambas3/
2) Pegas la orden que te da google code, en mi caso:
$svn checkout https://guerra-de-estrellas.googlecode.com/svn/trunk/ guerra-de-estrellas --username
3) Se crear la carpeta guerra-de-estrellas
En ella, se ha creado un directorio oculto, el .svn
4) Creo dentro de la carpeta "/home/uno/Gambas3/guerra-de-estrellas", una nueva carpeta llamandola del mismo modo "guerra-de-estrella"
5) Copio todo el "proyecto de gambas iniciado" a la carpeta "/home/uno/Gambas3/guerra-de-estrellas/guerra-de-estrella", (importante copiar los archivos y carpetas ocultos (Ctrl+H, en nautilus, para que se vean) )
6) Ejecuto el comando:
$svn add /home/uno/Documentos/guerra-de-estrellas/guerra-de-estrellas
(en en ide de gambas no me salia la opcion "Poner en el control de versiones"), no se el por qué, ya que tengo gambas3.2...
7) Me voy al proyecto (/home/uno/Documentos/guerra-de-estrellas/guerra-de-estrellas), y al menu Proyecto/Propidades/Versionado, ya me deja hacer el "commit"
(creo que no se me olvidan ningún paso)
¿como conseguir una revision en concreta, por ejemplo la r2?
svn checkout -r 2 https://NUESTROPROYECTO --username
Ver diferencias:
En el video comentas, que no funciona diff en google code con los archivos .class, que solo se pueden ver en "crudo"
He encontrado un programa que nos muestras las diferencias de manera gráfica, se llama tkdiff
Otro comparador de archivos:
He encontrado otro visor para ver las diferencias entre archivos, se llama meld ( Enlace ), y se instala facilmente con:
$sudo aptitude install meld
Proyectos ya inciados:
Tambien he conseguido hacerlo con proyectos que ya estaban iniciados (en el video comentas como hacerlo en un proyecto nuevo)...
¿como conseguir una revision en concreta, por ejemplo la r2?
svn checkout -r 2 https://NUESTROPROYECTO --username
Sí, después de terminarlo me di cuenta de que eso faltaba, aunque pensé en hacer una segunda parte, jeje como en el cine...
Registrado: Octobre 2009
Mensajes: 495
Edad: 50 Ubicación:
Re: Control De Versiones Con Google Code Y Gambas3
Gente, todo aquel que tenga intenciones que vayan un poquito más allá de juguetear a hacerse el programador debería ver este tutorial de Jesús Guardón y aprender a usar SVN u otro sistema de control de versiones. Este post debería tener 1500 lecturas.
Muy buena la edición del videotutorial Jesús. Ojalá haya más gente interesada en aprender y en comenzar a trabajar en equipos, hoy en día el desarrollo de software es una disciplina que exige saber trabajar en conjunto.
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
Re: Control de Versiones con Google Code y Gambas3
Gracias Fabián.
Comparto tu apreciación respecto a la necesidad de uso de los CVSs si pretendemos hacer algo serio. El motivo principal de hacerlo en vídeo y no escrito, fue precisamente para facilitar a los mas perezosos la oportunidad de ver y entender para qué sirve todo esto. A mi también me sorprende la falta de interés general (basándome en el número de visionados del vídeo).
El contenido podía haber sido más breve y haber incluido la parte que comentaba Julio, pero fue algo visceral y no tenía un buen guión para ceñirme a él.
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
Registrado: Junio 2010
Mensajes: 365
Edad: 58 Ubicación: Montevideo
Re: Control De Versiones Con Google Code Y Gambas3
Jesùs, muy claro el video, en cuanto a la falta de interés.....Creo que la mayoria de los que andamos "merodeando" por el foro no somos programadores, sino que lo hacemos como una afición a la que dedicamos más o menos tiempo.
Sé que lo que voy a decir ahora no tiene nada que ver con el control de versiones, pero si con la posibilidad de trabajar en equipo e incluso trabajar en local desde varios lugares distintos manteniendo sincronizados los archivos.
A causa del cierre de megaupload me ví en la necesidad de encontrar un nuevo lugar donde subir y compartir archivos y encontré dropbox que terminó resultando una herramienta mucho más útil de lo que yo buscaba. De hecho he trabajado en un mismo proyecto desde tres pc diferentes y los cambios se replican en el servidor y en los otros ordenadores, y hasta he podido trabajar en conjunto en un proyecto que no tiene nada que ver con la programación.
Y mi control de versionado es, simplemente, cada poco guardar con otro nombre el proyecto por si quiero volver atrás mientras sigo trabajando en el inicial.
Sé que no es profesional, pero como os comentaba, me parece que los aficionados somos mayoría, entusiastas sí, pero aficionados al fin....
Un abrazo
=================== Migrando desde visual basic, el Gambas de Ms
Mi blog gambero
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
Re: Control De Versiones Con Google Code Y Gambas3
Dani26:
Citar:
Y mi control de versionado es, simplemente, cada poco guardar con otro nombre el proyecto por si quiero volver atrás mientras sigo trabajando en el inicial.
Eso son copias de seguridad... es mucho mas amplio lo que hace subversion...
Citar:
, me parece que los aficionados somos mayoría, entusiastas sí, pero aficionados al fin....
Si, seguramente somos la mayoria, pero saber herramientas como esta (subversion) puede ayudarnos a mejorar mucho nuestros proyectos a largo plazo, incluso nos dá la posibilidad de hacer desarrollos en grupos..
Registrado: Junio 2010
Mensajes: 365
Edad: 58 Ubicación: Montevideo
Re: Control De Versiones Con Google Code Y Gambas3
Citar:
Citar:
Y mi control de versionado es, simplemente, cada poco guardar con otro nombre el proyecto por si quiero volver atrás mientras sigo trabajando en el inicial.
Eso son copias de seguridad... es mucho mas amplio lo que hace subversion...
Jesús, sin ánimo de polemizar ni negar la utilidad de la herramienta que Jesús propone, menciono en el mensaje que tengo copias sincronizadas de mis archivos en tres pc y en la nube, por tanto no son copias de seguridad, sino versiones previas de los mismos . Y si bien tú no eres profesional, tu nivel es bastante más alto que el de la mayoría (salvo que los "master" como Jesús, Fabián, Soplo, etc) y por eso sueles ir más allá, además de los cursos que has hecho y cuyos apuntes has compartido.
Además hay un tema de tiempos. Es muy interesante la herramienta, no lo niego,pero prefiero seguir avanzando con mis pequeños programas, aprendiendo y tratando de colaborar a que otros también aprendan. Y en cuanto a trabajar en grupo mencioné también que con dropbox es totalmente factible.
Saludos
=================== Migrando desde visual basic, el Gambas de Ms
Mi blog gambero
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
Re: Control De Versiones Con Google Code Y Gambas3
Bueno, reabro este tema, para simplemente comentar un detalle de porque es mejor usar svn (o git) en vez de subir los proyectos completos y poner un ejemplo:
Llevo varios meses trabajando con svn en varios proyectos (de tamaño medianos) y estoy viendo una ventaja "fundamental" con respecto a otros sistemas de almacenamiento ( dropbox, box, u otros sistemas de almacenamiento de este tipo.), y quería compartir mi experiencia:
En concreto os cuento lo que me pasa:
Mi proyecto es de tamaño mediano (unos 3 formularios, 10 módulos, y 4 clases aproximadamente), pero contiene unos archivos de plantillas (que a su vez contienen imágenes)...
- Cada vez que modifico o añado algo relacionado con el código:
1) Con svn, hago el "commit" (se sube al servidor) los archivos que modifico... (!pero solo los que modifico!)
2) A la vez, hago una copia del proyecto completo (creo un .tar.gz), y lo subo a drive.google (otro disco duro virtual como dropbox, o similares) (que seria el método que usa Dani26)
Problema:
La diferencia entre 1) y 2), es el tiempo que se tarda en subirlo al servidor... Usando svn se tardan segundos en tener el proyecto totalmente "actualizado", con los últimos cambios.... , sin embargo, subiendo el archivo tar.gz, tardo más de media hora (son unos 60 mb los que subo, ya que se sube "todos" los archivos)
Nota:
Evidentemente, el "problema" se puede solucionar, (sacando las plantillas del programa principal, haciendo que el programe una vez se inicie se descargue las plantillas, etc), pero ya serian varios archivos a descargar, el usuario deberia de tener internet,...
Fecha y hora actual: Sabado, 04 May 2024, 13:21 • Todas las horas son UTC + 1 Hora
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
Lista de permisos
Lista de permisos
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario