Hoy quería hacer una referencia al libro “Version Control By Example” de Eric Sink.
Este libro nos zambulle en el mundo de los controles de versiones desde prácticamente 0. Bastante fácil de leer, corto y con muchos ejemplos de código modificado paso a paso por varias personas.
El libro consta de 13 capítulos, en los que nos va contando desde la historia de los controles de versiones, pasando por los controles de versiones centralizados como Suversion, a continuación los distribuidos como Git y terminando con algunas buenas prácticas.
Personalmente recomendaría este libro sobre todo, a gente que esté empezando en este mundillo y no tenga mucha idea de cómo se trabaja en el día a día con controles de versiones. Aunque también es muy recomendable para gente que solamente conoce los 4 comandos básicos de su control de versiones del trabajo y quiere aprender un poco más del tema.
Los ejemplos paso a paso de cómo una persona empieza a tocar un código, otra lo modifica, salen conflictos y cómo los resuelven, son el día a día de cualquier programador de aquí a la Índia.
Con él, no solo aprenderemos a utilizar los comandos de commit y update que sabe todo el mundo, sino que nos enseñará a ir más allá y saber utilizar estas herramientas con todas sus posibilidades. Crear y unir ramas, crear, borrar y modificar privilegios de usuarios, deshacer cambios, clonar repositorios y otras cuantas cosas más. Y todo esto paso a paso, con todos los comandos necesarios.
Unos de los capítulos más interesantes para los que quieren ir más a fondo, es el penúltimo, que nos habla de las tripas de los controles de versiones. De como trabajan estos programas internamente y qué técnicas utilizan para hacer lo que hacen, junto con algunas de sus limitaciones.
Otro capítulo que a mi me gustó mucho, es en el que habla sobre técnicas de control de flujos de trabajo. En él nos explica levemente cada una de las técnicas más utilizadas como una rama por cada release o otra muy de moda, aunque antigua, rama por tarea. Aunque el capítulo es chulo, me hubiera gustado que profundizará mucho más en este tema.
El capítulo final lo dedica a un resumen de buenas prácticas. Muy corto y consejos muy familiares para los que llevamos un tiempo en esto. Os dejo algunos a continuación:
- Realiza tus commits de forma lógica, que se refieran a un cambio concreto
- Explica al máximo tus commits
- Usa etiquetas
- Revisa siempre los merges antes de hacer el commit
- No subas código comentado
Se echa de menos algún capítulo sobre otros sistemas de control de versiones muy utilizados en el mercado, como TFS o Plastic SCM (este último producto Español de la empresa Codice Software) y sobra parte de Veracity.
Si aún no os he convencido para leerlo, deciros que está disponible de forma totalmente gratuita en formato PDF, para consultarlo online, como EPUB y finalmente en libro físico, que si quieres te lo envían gratis a tu casa sin gastos de envío!!! Y de esto último os puedo dar fe
Espero haberos dejado sin excusas!