Segunda sesión curso de control de versiones con git y github:
Temas vistos en la sesión:
- Repaso de la sesión anterior:
-
Qué son las ramas
Las ramas en Git permiten trabajar en diferentes líneas de desarrollo de un proyecto de forma paralela.
-
Cómo ver las ramas de un proyecto
Comando git branch
para listar todas las ramas del repositorio.
-
Cómo crear una rama
Comando git branch nombre_rama
para crear una nueva rama.
-
Cómo crear una rama y cambiar a ella
Comando git checkout -b nombre_rama
para crear una nueva rama y cambiar a ella.
-
Cómo cambiar entre ramas con switch y checkout
Usar git switch nombre_rama
o git checkout nombre_rama
para cambiar de rama.
-
Cómo eliminar una rama
Comando git branch -d nombre_rama
para eliminar una rama.
-
Qué es merge
Operación que combina los cambios de una rama en otra, creando un commit de fusión.
-
Qué es rebase
Operación que reaplica los commits de la rama actual sobre la rama especificada, moviendo la historia de commit sin crear un commit de fusión.
-
Qué es una clave GPG
Una clave GPG (GNU Privacy Guard) se utiliza para cifrar y firmar digitalmente los datos y comunicaciones, garantizando la seguridad y autenticidad.
-
Cómo crear una clave GPG
Proceso de generación de una clave GPG usando el comando gpg --full-generate-key
.
-
Cómo configurar la firma de commits y tags con la clave GPG creada
Configuración en Git para firmar automáticamente los commits y tags con la clave GPG generada, usando comandos de configuración global.
Comandos utilizados en clase:
- git branch
- Muestra las ramas disponibles en un repositorio, la rama actual se marca con un símbolo *
- git branch nombre_rama
- Crea una rama con el nombre indicado
- git checkout nombre_rama
- Cambia a la rama especificada
- git switch nombre_rama
- Alternativa a checkout para cambiar de rama
- git branch -d nombre_rama
- Elimina la rama especificada
- git merge nombre_rama
- Combina la rama especificada con la rama actual
- git rebase nombre_rama
- Reaplica los commits de la rama actual sobre la rama especificada, moviendo la historia de commits de la rama actual para quedar a la cabeza de la historia de la rama especificada.
- gpg --full-generate-key
- Inicia la creación de una clave GPG
- gpg --list-secret-keys --keyid-format=long
- Muestra información en la consola de las claves GPG existentes
- gpg --list-secret-keys
- Muestra las claves GPG secretas almacenadas
- git config --global user.signingkey identificador
- Configura la firma global con la clave GPG especificada mediante el identificador
- git config --global commit.gpgsign true
- Configura que siempre se firmen los commits
- git config --global tag.gpgSign true
- Configura que siempre se firmen los tags
- git log --show-signature > log.txt
- Muestra el historial de commits con indicaciones de la firma y guarda la salida en el archivo log.txt
Notas:
La diferencia principal entre merge y rebase se puede resumir en cómo integran los cambios de una rama en otra:
- Merge: Combina los cambios de una rama en otra, creando un commit de fusión.
- Rebase: Transfiere los commits de una rama a otra, reaplicándolos sobre la historia de la rama destino sin crear un commit de fusión.
Al hacer merge o rebase, la rama indicada se combina con la rama en la que estamos trabajando actualmente, la cual se marca con un asterisco (*) al usar el comando git branch
.
Grabación de la clase:
Enlace a la grabación si lo prefieres Grabación segunda sesión
Volver a la portada del curso