Aprender a usar un sistema de control de versiones con Git y GitHub e integrarlo en el trabajo diario debe estar entre las habilidades elementales de un programador. El conocer en profundidad una buena herramienta de control de versiones es una revelación: de repente los errores son fáciles de deshacer, las versiones antiguas se recuperan en segundos, los miembros del equipo pasan a colaborar de verdad en lugar de estorbarse entre sí, incorporar y reutilizar código de terceros es trivial y por muchos discos que fallen, el código no se pierde. Nunca.
¿Qué encontrarás en este post?
ToggleSobre el control de versiones con Git y GitHub
Desgraciadamente, todavía son muchos los desarrolladores (tanto individuales como equipos) que aún no usan esta tecnología. Sospecho que se debe a una cierta barrera de entrada que tienen estas herramientas, ya que a menudo, después de leerse un libro uno no acaba de ver claro cómo integrarlo en el trabajo. No obstante, el esfuerzo necesario para asimilar e integrar git en tus desarrollos vale la pena y mucho, ya que pocas cosas mejorarán tanto tu calidad de vida como desarrollador.
Alcanzado el momento de iluminación nirvánica en que uno lo pilla y al igual que Neo,exclama «¡Ya sé Git!» cambia para siempre nuestra forma de trabajar. Ya no podremos imaginarnos como se podía vivir antes.
El Test de Spolsky
Joel Spolsky (Joel On Software) creó un test para medir la calidad de los equipos de desarrolloque consta de 12 preguntas. La primera de ellas es: ¿usas un sistema de control de versiones? Este test lo creó hace 15 años. Si aún no utilizas esta tecnología, o aunque la usas, crees que no le sacas todo el provecho que podrías, es hora de cambiar. Dominar git ya no es una opción, se ha convertido en un must.
El mundillo del control de versiones, antes fosilizado y catatónico, hace ya años que entró en ebullición y en la actualidad se ha universalizado con la implantación de git, un sistema de control de versiones distribuido de código abierto, eficiente y sencillo en su uso. Los sistemas de control de versiones distribuidos (DVCS) y las ventajas que conlleva su implantación han desbancado ya a los clásicos CVS y Subversion.
Git es solo el principio
El éxito apabullante de git radica en que se adapta perfectamente a las necesidades tanto de desarrolladores individuales como a equipos inmensos y geográficamente dispersos. Además, git viene de serie en OSX y Xcode incluye por defecto la integración. Si eres desarrollador de iOS u OSX, git es la herramienta idónea para ti.
Y si sumamos la infinidad de librerías de Cocoa que hay en gitHub (gitHub: foco o punto de encuentro de git) y la facilidad de uso de sus repositorios remotos, no hay duda posible sobre la herramienta a usar. Git es una herramienta de linea de comandos, pero si eso te aburre o echa para atrás, hay una infinidad de GUIs. El que uso yo es SourceTree, de Atlassian. Es para Mac, francamente bueno y gratis.
Saber utilizar correctamente git y los servicios de gitHub es vital para la productividad de cualquier equipo de desarrollo hoy en dia. Además, el control de versiones es un componente fundamental que se integra con las metodologías más punteras de desarrollo, como TDD y Continous Integration. Otro día hablaremos de eso.
Ponte ya. Según Joel Spolski llevas 15 años de retraso. Que no sean 16. Entra por la puerta grande a un desarrollo más sofisticado, Git, GitHub y más en el Desarrollo de Apps Móviles Full Stack Bootcamp.