Buen día!
Hace mucho que no pasaba por mi blog y pues de nuevo lo estoy retomando mediante éste tema que es sumamente interesante e importante en el mundo del desarrollo de sistemas.
La premisa es la siguiente… Cuando hay un grupo de desarrolladores que trabajan en un mismo sistema, suele haber un poco de descontrol referente al código fuente, dado que uno trabaja en una parte, otro en otra, y así… se vuelve caótico cuando no hay «alguien» (persona) encargada de velar por tener los últimos fuentes, pasarlo a los demás, actualizar los formularios, reportes, clases, etc. actualizados, agregar los nuevos, etc.
No habrá una solución más sistemática de esto? Para muchos desarrolladores diestros o que trabajan con metodologías de desarrollo pensarán que lo que estoy hablando es sumamente básico y no es necesario ahondar en el asunto; pero lo cierto es que hay muuucha gente que desarrolla a lo loco, inclusive en muchas empresas, entonces es necesario poner orden y, si bien no vamos a hablar sobre una metodología de desarrollo en específico (como lo es la XP), vamos a hablar del controlador de versiones del código fuente.
Según wikipedia, Se llama control de versiones a la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo. El control de versiones se realiza principalmente en la industria informática para controlar las distintas versiones del código fuente dando lugar a los sistemas de control de código fuente o SCM (siglas del inglés Source Code Management). Sin embargo, los mismos conceptos son aplicables a otros ámbitos como documentos, imágenes, sitios web, etc.
Bien, sin más vamos a hablar al grano… Cómo lograr éste control de versiones con herramientas OpenSource???? Si usas Visual Studio .NET (desde la versión 2005 hasta la 2012…) o si programas en PHP, Java, etc., hay soluciones al respecto! hablaré de una em particular que me ha parecido fabulosa dado que es totalmente free y se adapta a las necesidades básicas del controlamiento de versiones.
En éste post no me extenderé como tutorial de cómo hacer para implementar todo… sino que hablaré a groso modo sobre la solución. Se ha probado en un SO Windows (XP en adelante)
- Primero!, descargar e instalar el servidor (recordar que es una arquitectura cliente/servidor) de control de versiones llamado CollabNet – Subversion Edge. El único requisito es tener la máquina virtual de Java y con eso podemos instalar Subversion Edge.
- La instalación es sencilla y pues básicamente crea una instancia de un servidor web de tal manera podemos acceder a la administración del subversion Edge desde el navegador en la dirección http://localhost:3343/csvn/
- El usuario y contraseña es admin <– Ojo con eso.
- Una vez entramos a la administración de Subversion Edge, lo primero es seguir el wizard para configurarlo según nuestras necesidades… no es cosa de otro mundo.
- Al final, ya tenemos todo listo.
- Segundo! Creamos un repositorio, el cuál será el lugar en donde estarán nuestros proyectos (desarrollos) controlados.
- Tercero! Crear los usuarios o desarrolladores que tendrán acceso a dicho repositorio.
- Y bien, ya esta todo listo del lado del server!
- Recordar iniciar el servicio SVN en la página de status
Ahora, si trabajamos con tecnologías .NET, obviamente tenemos que tener una versión .NET que soporte el control de versiones… si trabajaremos con una versión express (creo que la de 2010 y 2012 funciona) verificar mediante los sitios de microsoft si soporta el control de versiones. Las versiones basic, professional, developers, etc. deberían de funcionar bien.
Si trabajamos en PHP, podemos trabajar ya sea con eclipse o con cualquier otro IDE (como geany o el típico notepad). Si se usa eclipse, hay un addons que se le puede hacer de tal manera manejar de forma fácil el control de versiones, pero si se trabaja con otros IDE pues usaremos otro software que mencionaré más adelante.
En el caso de .NET!, debemos instalar el software AnkhSvn, el cual es un software libre que da soporte al .NET para usar subversion como controlador de versiones. Entonces, se descarga, se instala y al abrir el .NET ya debería estar implementado Ankhsvn para poderlo usar.
En el caso de usar cualquier IDE de PHP o el notepad es diferente la situación. Aquí el nivel de control se realizará a nivel de archivos netamente, sin adaptar algún software al IDE, sino que más bien el software que descargaremos en esta ocasión se adaptará al sistema operativo o, más específicamente, al explorador de archivos de nuestro OS. El software al que me refiero es TortoiseSVN!. Solo se descarga y se instala!
Ahora, se preguntará cómo se hace para subir sus proyectos al repositorio, cómo los desarrolladores obtendrán el código fuente, cómo actualizarán la versión del proyecto, etc. y es una muy buena pregunta!, pero escribirlo es sumamente tedioso… así que haré un video-tutorial básico del uso tanto en .NET como usando TortoiseSVN en el próximo post. PENDIENTES!
Les dejo algunas capturas de pantalla!
Es mi primer año de Universidad necesito ayuda en cómo escribir un código en Visual Basic 2010
El cual el usuario pueda ingresar las horas que trabajo ejemplo 40 y que sean pagadas a $10.00 la hora pero que si trabajo horas extras ósea mas de 40 que sean multiplicadas a 1.5
Ivan, si estas en la facultad y no podes hacer eso, espero que nunca te recibas porque seras un peligro para la sociedad.