Tutorial de Git

En esta lista de reproducción os mostraré cómo utilizar Git, paso a paso, de forma clara y en castellano. Aprenderemos los comandos para la terminal que te darán la clave para aprender a usar este popular sistema de control de versiones. El tutorial es compatible con cualquier sistema operativo aunque como referencia el soporte está pensado para UNIX.

4:23

1. ¿Qué es Git?

En este primer episodio del Tutorial de Git discuto qué es Git, por qué se ha vuelto tan popular en la industria del software y qué ventajas nos aporta frente a otros sistemas de control de versiones ya existentes.

8:53

2. Cómo instalar Git

En este episodio me centro en la instalación de Git en Windows, Linux y MacOS X. Instalar Git en sistemas UNIX es particularmente sencillo. En Windows también hay alternativas fáciles de instalar.

8:56

3. Creando tu primer commit

Una vez que Git se encuentra instalado en el ordenador podemos crear un repositorio y hacer el primer commit. Hoy veremos cómo usar git init, git add, git commit y git status.

10:27

4. Qué es el staging area

Hoy me centro en detalle en lo que comencé a explicar en el episodio anterior. En qué estados se pueden encontrar los archivos en nuestro repositorio de Git.

6:43

5. Cómo deshacer modificaciones de archivos

Cuando hacemos la modificación que no debimos nunca hacer, ¿cómo damos marcha atrás? En este vídeo os muestro cómo deshacer cambios locales y cómo sacar cambios del stage.

7:11

6. Cómo deshacer un commit con reset

Si lo que queremos deshacer es algo que ya hemos confirmado, podemos deshacer el commit de varias formas. Hoy nos centramos en el comando git reset.

7:08

7. Cómo revertir un commit con revert

Cómo revertir cambios de una forma no destructiva por medio del comando revert. Si has hecho un commit que has visto daba problemas, hoy te enseño cómo deshacer sus modificaciones.

5:41

8. Introducción a las ramas

Las ramas es un mecanismo que tienen los sistemas de control de versiones mediante el cual podemos mantener varias versiones del código de forma paralela sin interferencia.

5:46

9. Cómo crear y modificar ramas

Continuando con las explicaciones sobre ramas, hoy veremos cómo crear una rama con Git, y cómo modificar y eliminar ramas. Además, cómo usar checkout para cambiar de rama.

6:00

10. Commits bajo el workflow Feature Branch

Cuando trabajamos bajo el workflow Feature Branch, implementamos las características en ramas separadas de la principal. En este vídeo veremos cómo se pueden hacer commits en otras ramas.

6:26

11. Cómo fusionar ramas con merge

Una vez que hemos desarrollado la característica de un commit, tenemos que fusionarlo (merge) para que vuelva a la rama inicial. Vemos cómo hacer esto, esta vez mediante fast-forward y recursive.

8:49

12. Fusiones conflictivas

Cuando hacemos fusiones más avanzadas en Git corremos el riesgo de que se desate un conflicto. Hoy estudiamos qué ocurre si hacemos modificaciones al mismo archivo en varias ramas.

6:47

13. Cómo construir alias

Hagamos un interludio en el tutorial para explicar cómo usar alias, de modo que podamos escribir menos letras para ejecutar nuestros comandos con Git.

8:49

14. Más sobre conflictos

Todo un vídeo dedicado a conflictos. Os vuelvo a explicar cómo ocurren y cómo resolverlos. Como abortar un conflicto. Y mi experiencia personal en dónde suelen ocurrir conflictos en Git.

6:48

15. Etiquetas

Los sistemas de control de versiones ofrecen etiquetas para marcar commits significativos a los que podamos referirnos más tarde. En este vídeo te cuento cómo crear etiquetas en Git.

9:00

16. Tags anotados

Los tags anotados son tags que se comportan como objetos. Pueden tener descripción, datos de autor, de fecha y hora, firma... en este vídeo te explico sus diferencias y cómo crearlos.

6:32

17. Stash

El stash es una herramienta que tiene Git para limpiar el directorio de trabajo de cambios, preservándolos de modo que podamos recuperarlos más adelante.

5:15

18. Introducción a remotos

Alerta por videomonólogo. En este episodio os introduzco al concepto de remotos explicando cómo se comportan en Git y en qué se diferencian de los de un SCV centralizado.

5:44

19. Pusheando a un remoto

Crearemos un repositorio en GitLab y lo asociaremos a nuestro repositorio local con `git remote`. Luego enviaremos nuestro código a la nube usando `git push`.

5:47

20. Clonando y haciendo pull

Ahora que tenemos el código en un remoto vamos a ver cómo podemos acceder a él de cero usando clone y cómo podemos recibir commits de un remoto usando pull.

8:15

21. Fetch y pull rebases

Cómo obtener información sobre un remoto con fetch, y cómo los remotos no son más que ramas que se pueden fusionar. Además, qué ventajas aporta un pull-rebase frente a un pull-merge normal.

7:09

22. Rebase

El rebase es un comando que deja tocar el historial de commits de Git con distintos usos. Hoy os enseño cómo hacer un rebase en vez de un merge a la hora de integrar cambios.

5:44

23. Rebase interactivo

Para cerrar esta temporada, os hablo acerca del rebase interactivo, un comando útil para reescribir del todo el historial de Git: aplastar commits, cambiarlos de orden, modificar mensajes... ¡todo!