El documento habla sobre mejorar la productividad utilizando Git. Explica que Git es un software de control de versiones diseñado por Linus Torvalds para mantener versiones de código de forma eficiente y confiable. Describe algunas ventajas clave de Git como auditoría de código, control de cambios, deshacer cambios, ramificación, y trabajo colaborativo. Luego proporciona una receta básica del flujo de trabajo de Git para desarrolladores, incluyendo clonar repositorios, crear ramas, agregar cambios, y fusionar ra
17. Git
Git (pronunciado "guit") es un software de control de versiones diseñado por Linus
Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de
versiones de aplicaciones cuando éstas tienen un gran número de archivos de
código fuente.
18. Git
"You know you're brilliant, but maybe you'd like to understand
what you did two weeks from now." - Linus Torvalds
19. Git - The goods
● Auditoría del código
● Control sobre cómo ha cambiado un repositorio
● Rollback de cambios simple
● Segmentación de diferentes versiones a.k.a branch.
● Seguridad: todas las estructuras internas de datos están firmadas con SHA1. No se puede
cambiar el código sin que nos enteremos
● Mejora nuestra capacidad de trabajar en equipo
● Merging y branching extremadamente eficientes
● Posibilidad de trabajo sin conexión
28. Git - Flow recipe
1. Developer tiene una tarea (issue)
2. Developer ejecuta clone del repositorio remoto en su máquina local.
3. Developer crea un nuevo branch local desde la rama que posee los últimos
cambios válidos (e.g: master, develop)
4. Developer realiza la tarea y está listo para subir su código
5. Developer agrega archivos y hace commit del cambio (repetir este paso
según sea necesario)
6. Developer sube su rama local al repositorio remoto (push)
7. Developer crea una solicitud de integración (pull request)
34. Git - Crear rama a partir de otra como base
ssh/sandbox$ git checkout -b feature/1 develop
Switched to a new branch 'feature/1'
ssh/sandbox$ git branch
develop
* feature/1
master
git checkout -b {child} {parent}
35. Git - Revisar cambios
ssh/sandbox$ git status
modificado: README.md
ssh/sandbox$ git diff
--- a/README.md
+++ b/README.md
-# sandbox
+# Sandbox - Play repository
git status
git diff
44. Usted no lo haga
● Subir cambios directos a master (siempre ocurre :@ )
● Mezclar cambios de diferentes branches
● Intentar eliminar un commit que ya está en el repositorio remoto
● Usar git add . sin revisar qué archivos fueron modificados
● No subir commits periódicamente
● No mantener actualizado tu branch con el branch desde donde salió.
● Crear un PR con conflictos y errores
● Usar mensajes no descriptivos en los commits