Git es uno de los sistemas de control de versiones más extendidos actualmente, su principal característica es que distribuido. Nace de la mano de Lius Torvalds en el año 2005 para gestionar el código fuente de Linux y poco a poco va ganando adeptos en comunidades como GitHub o ButBucket.
Características de GIT
GIT es distribuido, una de las diferenciaciones más importante con otros repositorios como SVN es que es un sistema distribuido. No es necesario un servidor central, cada programador tiene una copia completa del repositorio en su equipo y al hacer un cambio se propaga a todos los nodos.
Esto permite un gran rendimiento en grandes desarrollos, las búsquedas son mucho más eficaces lo que supone una gran rapidez para detectar diferencias entre archivos.
Ventajas y desventajas de GIT
- Gran rendimiento en programas grandes, gracias a ser un sistema distribuido, las búsquedas son mucho más eficaces lo que supone una gran rapidez para detectar diferencias entre archivos.
- Su sistema de ramas o branches es muy flexible, pudiendo crear ramas locales independientes de un repositorio centralizado. Se puede crear distintos branches para distintos usos, una de las ramas se deja estable con el código de producción, y los nuevos desarrollos se hacen en ramas paralelas, al finalizar basta con hacer un merge para unir los cambios. Otra opción es, al ser distribuido, que un desarrollador haga sus cambios en una rama en local que no es necesaria subir al resto de nodos.
Uso básico de GIT
- git add . => Comprueba si hay cambios
- git status => Comprueba el estado de repositorio actual
- commit => Subida de archivos a tu repositorio local, a diferencia de en otros sistemas como SVN con el commit no se propaga el cambio.
- git pull Actualiza tu versión de código, equivaldria al update de SVN
- git push => Envia los cambios locales comiteados al resto de nodos
- git log Puedes ver el historial de cambios
- git diff Ver los cambios realizados en un archivo
Clientes de GIT
Para gestionar GIT como hemos visto sólo nos hace falta una consola de comandos. Pero existen clientes para los distintos SO’s para trabajar con GIT de una manera más visual. Entre otros destacan:
- Para los que vengáis del mundo de SVN, seguramente os es familiar trabajar con tortoise. Para GIT también existe una versión muy similar TortoiseGIT
- Otro cliente muy usado y eficaz es SourceTree, que provee al usuario de un entorno gráfico donde ver todo el historial de cambios y ramas
Te esperamos en los próximos artículos en donde hablaremos mas acerca de estos temas que hoy en día son de importancia e interés en el mundo de la tecnología.