Home » Git desde cero – parte 1
git y github

Git desde cero – parte 1

Hoy doy inicio a esta la serie de artículos "Git desde cero" en su parte 1. A través de ejemplos prácticos, te guiaré desde lo más básico hasta un nivel intermedio que te haga sentir totalmente cómodo...

Hoy doy inicio a esta la serie de artículos “Git desde cero” en su parte 1. A través de ejemplos prácticos, te guiaré desde lo más básico hasta un nivel intermedio que te haga sentir totalmente cómodo al trabajar con esta herramienta.

Sin más preámbulos, empecemos.

Requisitos

Dado que esta guía es de caracter netamente práctico, no voy a entrar en muchos detalles teóricos. Si bien esta es una guía de Git desde cero, he dejado los temas conceptuales en otro artículo previo que te recomiendo revisar: Git para principiantes – El paso a paso.

Por ende, en esta guía asumiremos que ya se tiene Git instalado en nuestros equipos.

Contexto

Érase una vez Ana y Angel, dos apasionados por la programación que querían comenzar a trabajar juntos en proyectos de Infraestructura como Código con Terraform utilizando Git.

Ahora sí: Git desde cero

Paso 1 – Crear una cuenta en GitHub

Ambos, Ana y Angel, van a https://GitHub.com y se crean una cuenta personal. Asumiremos que el usuario de Angel es “arengifoc” y el usuario de Ana es “anita0331”.

Paso 2 – Configurar credenciales para conexión a GitHub desde consola

Git como herramienta de línea de comandos soporta dos mecanismos comunes de autenticación hacia GitHub:

  • Autenticación con Tokens
  • Autenticación con llaves SSH

Nosotros podemos elegir cualquiera de los dos métodos, así que mostraré cómo se hace en ambos casos.

Autenticación con Tokens

GitHub soporta autenticación vía PATs (Personal Access Tokens). Para ello, es necesario ir a las configuraciones de desarrollador (“Settings” –> “Developer Settings”) o directo a la URL https://github.com/settings/apps

Luego, seleccionar el menú “Personal access tokens” –> “Tokens (classic)”, clic en el botón “Generate new token” y elegir “Generate new token (classic)”

git desde cero - creacion de un token personal

Activar las opciones mostradas en pantalla y dar clic en el botón “Generate token”. En la pantalla siguiente se muestra el token por única vez, por lo cual hay que copiarlo dando clic al botón encerrado en el círculo rojo.

token generado

Luego, crear un archivo netrc (en Windows es _netrc, en Linux o Mac es .netrc) ubicado en el directorio personal de nuestro usuario. El archivo debe tener este contenido:

machine github.com login arengifoc password ghp_aQAcY7RXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

En el texto arriba mostrado se debe reemplazar “arengifoc” por el nombre de tu usuario GitHub, y lo mismo para el token que en el ejemplo figura como “ghp_aQAcY7RXXXXXXXXXXXXXXXXXXXXXXXXXXXXX” con tu propio token obtenido.

Importante: Este tipo de autenticación se usa cuando elegimos el método HTTPS al clonar repositorios Git, tal como se muestra en el siguiente paso.

Autenticación con llaves SSH

GitHub también soporta autenticación a través de llaves SSH, para lo cual debemos registrar nuestra llave pública en nuestra cuenta.

Primero, creamos nuestro juego de llaves -ubicados en nuestro directorio personal- como sigue:

ssh-keygen -N "" -f mi-llave-ssh.pem

Al completar este comando observarás que se crearon dos archivos:

  • mi-llave-ssh.pem (llave privada)
  • mi-llave-ssh.pem.pub (llave pública)

Lo que nos importa es el contenido de la llave pública la cual debemos copiar en el portapapeles.

Ahora, en GitHub, vamos a “Settings” –> “SSH and GPG keys” y damos clic en el botón “New SSH key”

registrar llave SSH en GitHub

En el campo “Key” pegamos el contenido de la llave pública que anteriormente copiamos. También, le damos un título cualquiera (que no necesariamente debe coincidir con el nombre de nuestra llave SSH). Finalmente, damos clic en el botón “Add SSH key”.

En la pantalla siguiente debemos comprobar que ya aparece nuestra nueva llave SSH registrada:

listado de llaves SSH

Importante: Este tipo de autenticación se usa cuando elegimos el método SSH al clonar repositorios Git, tal como se muestra en el siguiente paso.

Paso 3 – Crear un repositorio

Luego, Angel toma la iniciativa y crea un repositorio llamado infra-como-codigo de tipo privado:

creacion de nuevo repositorio

Paso 4 – Clonar el repositorio localmente

Una vez que el repositorio ya fue creado, es momento de clonarlo. Seguramente se nos muestra la siguiente pantalla al dar clic en el botón verde “Code”:

Método HTTPS

clonar repositorio por HTTPS

Observen que se ha seleccionado el método “HTTPS”, el cual muestra una URL que empieza con “https://”. Si decidimos trabajar con este método de acceso a nuestro repositorio, entonces damos clic en el botón señalado por la flecha roja para poder clonar la URL. Luego, vamos a la consola y estando ubicados en un directorio trabajo específico (Ejm: Mis Documentos), clonamos como sigue:

git clone https://github.com/arengifoc/infra-como-codigo.git

De nuevo, reemplazamos “arengifoc” por el nombre de nuestro usuario GitHub.

Método SSH

clonar repositorio por SSH

Observen que ahora se ha seleccionado el método “SSH”, el cual muestra una URL que empieza con “[email protected]:”. Si decidimos trabajar con este método de acceso a nuestro repositorio, entonces damos clic en el botón señalado por la flecha roja para poder clonar la URL. Luego, vamos a la consola y estando ubicados en un directorio trabajo específico (Ejm: Mis Documentos), clonamos como sigue:

git clone [email protected]:arengifoc/infra-como-codigo.git

De nuevo, reemplazamos “arengifoc” por el nombre de nuestro usuario GitHub.

Conclusión

En este primer episodio del curso “Git desde cero” he enseñado los primeros pasos que consiste en la creación de una cuenta en GitHub. Luego, mostré cómo configurar los dos métodos de autenticación más usados (HTTPS y SSH). Finalmente, se mostró la creación de un repositorio y la clonación del mismo con los dos métodos antes mencionados.

Para ser un primer artículo de esta serie, creo que el contenido es más que suficiente. Pretendo no extenderme demasiado para poder mantener la facilidad de lectura y rápido aprendizaje del lector.

Nos vemos en un siguiente episodio.

Post navigation

Deja un comentario

Agregue un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *