Git

Git

Tutorial Git: Git con GitHub Desktop

Git GitHub Desktop: uso y configuración. Domina el uso y configuración de GitHub Desktop con ejemplos prácticos y detallados.

Aprende Git y certifícate

Instalación y configuración: Vincular cuenta de GitHub

Primero se descarga la aplicación desde el sitio oficial desktop.github.com. Al acceder, se selecciona el botón de descarga correspondiente al sistema operativo que se utilive.

Una vez descargado el instalador, se ejecuta y se siguen las indicaciones del asistente para completar la instalación. Al finalizar, se inicia GitHub Desktop y se presenta una pantalla de bienvenida que ofrece la opción de iniciar sesión en GitHub.com o en GitHub Enterprise. Se elige "Sign in to GitHub.com" para vincular la cuenta personal.

En la ventana de autenticación, se ingresan las credenciales de la cuenta de GitHub. Si se tiene habilitada la autenticación en dos pasos (2FA), se proporcionará el código de verificación correspondiente. Al autenticarse correctamente, se otorgan los permisos solicitados para que GitHub Desktop pueda acceder a los repositorios y actividades de la cuenta.

A continuación, se configura la identidad local para los commits. Se verifica que el nombre de usuario y el correo electrónico mostrados sean correctos, ya que estos datos se incluirán en cada commit realizado.

En el menú de la aplicación, se puede acceder a las Preferencias para ajustar configuraciones adicionales. Se recomienda revisar la sección de Integrations para gestionar los editores de código preferidos y otros ajustes. También es posible configurar notificaciones y opciones de Git según las necesidades del usuario.

Clonación y creación de repos: Flujo de trabajo inicial

Para comenzar a trabajar con repositorios en GitHub Desktop, se pueden clonar repositorios existentes o crear nuevos directamente desde la aplicación.

Para clonar un repositorio existente desde GitHub, se siguen los siguientes pasos:

1. En GitHub Desktop, se selecciona la opción File > Clone Repository o se hace clic en el botón Clone a repository from the Internet en la pantalla inicial.

2. En la ventana emergente, se elige la pestaña GitHub.com para visualizar los repositorios asociados a la cuenta vinculada.

3. Se busca y se selecciona el repositorio que se quiera de la lista disponible.

4. Se especifica la ruta local donde se almacenará el repositorio en el campo Local Path.

5. Se hace clic en Clone para iniciar el proceso de clonación. El repositorio se descargará y estará listo para su uso local.

Para crear un nuevo repositorio local y posteriormente alojarlo en GitHub, se procede de la siguiente manera:

1. En la aplicación, se selecciona File > New Repository o el botón Create a New Repository on your Hard Drive. 2. Se completa el formulario con los detalles del repositorio:

  • Name: Nombre asignado al repositorio.
  • Description: Descripción opcional que detalla el propósito del proyecto.
  • Local Path: Directorio en el cual se almacenará el repositorio localmente.
  • Opciones adicionales como inicializar con un README, añadir un archivo .gitignore específico o seleccionar una licencia.

3. Se hace clic en Create Repository para generar el repositorio local.

Con el repositorio creado localmente, es posible añadir código y realizar commits que registren los cambios efectuados. Si se quiere compartir el proyecto, se puede publicar en GitHub siguiendo estos pasos:

1. Desde el repositorio abierto en GitHub Desktop, se hace clic en el botón Publish repository ubicado en la parte superior.

2. En la ventana de publicación, se puede modificar el nombre del repositorio y la descripción si es necesario.

3. Se elige la configuración de visibilidad, optando por un repositorio público o privado según el alcance del proyecto.

4. Se presiona Publish Repository para subir el repositorio al perfil de GitHub vinculado.

Este proceso sincroniza el repositorio local con el remoto.

Una vez publicado, se puede continuar trabajando localmente y utilizar GitHub Desktop para sincronizar los cambios con el repositorio remoto.

Visualización de cambios y commits: Interfaz gráfica

En la sección principal de la aplicación, se presentan dos pestañas clave: Changes y History. La pestaña Changes muestra los archivos que han sido modificados en el repositorio local pero aún no han sido confirmados mediante un commit. Aquí se puede observar una lista de archivos con cambios pendientes y, al seleccionar uno de ellos, se visualiza el visor de diferencias o diff viewer.

El visor de diferencias permite comparar los cambios realizados en cada archivo respecto a su última versión confirmada. Se resaltan las líneas añadidas en verde y las eliminadas en rojo. Si se quieren revisar los cambios en detalle, se puede desplazar por el archivo y examinar cada modificación individualmente.

Para preparar un commit, se seleccionan los archivos que se desean incluir marcando las casillas correspondientes. Es posible seleccionar todos los cambios o únicamente aquellos que se consideren listos para ser confirmados. Además, si se necesita dividir los cambios dentro de un mismo archivo, se puede desplegar su contenido y seleccionar fragmentos específicos para incluir en el commit.

En el campo de Summary, se introduce un mensaje descriptivo que resume los cambios realizados. Opcionalmente, se puede añadir una descripción más detallada en el área inferior si se requiere explicar aspectos adicionales del commit.

Una vez preparado el commit, se hace clic en el botón Commit to main (o al nombre de la rama actual) para confirmar los cambios. Los archivos seleccionados se registran en el repositorio local, y los cambios desaparecen de la pestaña Changes, indicando que ya no hay modificaciones pendientes.

La pestaña History ofrece una visión completa del historial de commits del repositorio. En esta sección, se muestran todos los commits realizados, ordenados cronológicamente. Al seleccionar un commit específico, se despliega la lista de archivos afectados y los cambios introducidos en cada uno.

Si se necesita buscar un commit específico, se puede utilizar la barra de búsqueda situada en la parte superior de la pestaña History. Al introducir palabras clave o identificadores de commits, se filtra la lista y se facilita la localización del commit que se quiera.

Además, GitHub Desktop permite comparar ramas y commits para identificar diferencias entre ellos. Al seleccionar la opción Branch > Compare to Branch en el menú, se abre una ventana que muestra las discrepancias entre la rama actual y otra rama seleccionada. Esto es útil para revisar los cambios antes de realizar fusiones o para analizar el impacto de nuevas funcionalidades.

Para gestionar las ramas, se puede utilizar el menú desplegable situado en la esquina superior izquierda de la aplicación. Aquí se pueden crear, cambiar y eliminar ramas de forma intuitiva. Al seleccionar una rama diferente, la pestaña History se actualiza para reflejar el historial de dicha rama, y la pestaña Changes mostrará los cambios relativos a ella.

Si se quiere descartar cambios no deseados en archivos modificados, se puede hacer clic derecho sobre el archivo en la lista de Changes y seleccionar la opción Discard Changes. Esto revertirá el archivo a su estado en el último commit, eliminando las modificaciones locales realizadas.

Sincronización y Pull Requests: Cómo subir cambios y abrir PRs

Para colaborar en proyectos con GitHub Desktop hay que saber cómo sincronizar los cambios locales con el repositorio remoto y cómo abrir Pull Requests (PRs) para contribuir al código compartido.

Sincronización de cambios con el repositorio remoto

Una vez realizados y confirmados los commits en el repositorio local, es necesario enviar estos cambios al repositorio remoto en GitHub. Este proceso se realiza mediante la sincronización, que engloba las operaciones de pull (obtener cambios del remoto) y push (enviar cambios al remoto).

Para subir los cambios locales al remoto, se sigue este flujo:

1. Verificar cambios pendientes: Antes de sincronizar, se asegura que todos los cambios están confirmados. En la pestaña Changes, se comprueba que no quedan archivos sin añadir al último commit.

2. Seleccionar la rama adecuada: Se verifica que se está trabajando en la rama correcta desde el menú desplegable en la esquina superior izquierda. Si es necesario, se cambia a la rama deseada utilizando Branch > Switch Branch.

3. Realizar el push de los commits: En la parte superior de la interfaz, aparece el botón Push origin cuando hay commits locales pendientes de subir. Al pulsarlo, se envían los commits al repositorio remoto en GitHub.

Si es la primera vez que se realiza un push en una rama nueva, es posible que el botón muestre Publish Branch. Al pulsarlo, se crea la rama en el remoto y se suben los commits asociados.

Obtener cambios del repositorio remoto

Para mantener el repositorio local actualizado con los últimos cambios realizados por otros colaboradores, se utiliza la operación de pull:

1. Identificar si hay actualizaciones: Si existen cambios en el remoto que no están en la copia local, el botón superior mostrará Pull origin. También se puede comprobar manualmente seleccionando Repository > Pull.

2. Ejecutar el pull: Al pulsar Pull origin, se descargan los cambios del remoto y se integran en el repositorio local. Si hay conflictos, GitHub Desktop notificará y permitirá resolverlos utilizando herramientas gráficas.

Creación de Pull Requests desde GitHub Desktop

Los Pull Requests son fundamentales para proponer cambios y facilitar la revisión por parte de otros miembros del equipo. A continuación, se describe cómo abrir un PR desde GitHub Desktop:

1. Preparar la rama de trabajo: Se crean los cambios en una nueva rama para mantener el historial organizado. Para crear una rama, se selecciona Branch > New Branch, se asigna un nombre descriptivo y se guarda.

2. Realizar commits en la rama nueva: Se desarrollan las modificaciones y se confirman los cambios mediante commits habituales en la rama recién creada.

3. Sincronizar la rama con el remoto: Una vez finalizado el trabajo, se pulsa Publish Branch para subir la nueva rama y sus commits al repositorio remoto.

4. Iniciar el Pull Request: Tras publicar la rama, GitHub Desktop ofrece la opción Create Pull Request. Al seleccionarla, se abre una ventana emergente con los detalles del PR.

5. Completar los detalles del PR: En la ventana de creación del PR, se rellenan los campos necesarios:

  • Título: Un resumen conciso de los cambios propuestos.
  • Descripción: Información detallada sobre las modificaciones, motivos y cualquier contexto relevante.
  • Destino y origen: Se verifica que la rama base (destino) y la rama de comparación (origen) son las correctas.

6. Crear el Pull Request: Al pulsar Create Pull Request, se abre el PR en GitHub, donde otros colaboradores pueden revisarlo, comentarlo y eventualmente fusionarlo.

Gestión y seguimiento de Pull Requests

Una vez creado el PR, es posible gestionarlo tanto desde GitHub Desktop como desde la plataforma web de GitHub:

  • Revisión de comentarios: Si los revisores añaden comentarios o solicitan cambios, se pueden ver las notificaciones en GitHub Desktop o en la página del PR.

  • Realizar cambios adicionales: Si se necesitan ajustes, se realizan nuevos commits en la misma rama local y se sincronizan con el remoto mediante Push origin. Los nuevos commits se añadirán automáticamente al PR existente.

  • Resolver conflictos: Si surgen conflictos al intentar fusionar el PR, GitHub Desktop asistirá en la resolución mediante herramientas gráficas.

Fusión del Pull Request

Cuando el PR ha sido aprobado por los revisores:

1. Confirmar que no hay conflictos: Se asegura que la rama está actualizada y libre de conflictos con la rama base.

2. Fusionar el PR: Desde la interfaz web de GitHub, se utiliza el botón Merge Pull Request para integrar los cambios en la rama principal.

3. Eliminar la rama: Después de fusionar, se puede eliminar la rama de trabajo tanto en el remoto como localmente para mantener el repositorio limpio. En GitHub Desktop, se selecciona la rama y se elige Delete Branch.

Buenas prácticas en sincronización y Pull Requests

  • Commits atómicos: Realizar commits pequeños y específicos facilita la revisión y el seguimiento de cambios.

  • Nombres descriptivos de ramas: Utilizar nombres que reflejen el propósito o la funcionalidad, como feature/autenticacion o bugfix/login-error.

  • Actualización frecuente: Sincronizar regularmente con el remoto evita conflictos y mantiene la coherencia con el trabajo del equipo.

  • Comunicación: Añadir descripciones claras en los PRs y responder a los comentarios agiliza el proceso de revisión y fusión.

CONSTRUYE TU CARRERA EN IA Y PROGRAMACIÓN SOFTWARE

Accede a +1000 lecciones y cursos con certificado. Mejora tu portfolio con certificados de superación para tu CV.

30 % DE DESCUENTO

Plan mensual

19.00 /mes

13.30 € /mes

Precio normal mensual: 19 €
63 % DE DESCUENTO

Plan anual

10.00 /mes

7.00 € /mes

Ahorras 144 € al año
Precio normal anual: 120 €
Aprende Git online

Ejercicios de esta lección Git con GitHub Desktop

Evalúa tus conocimientos de esta lección Git con GitHub Desktop con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Todas las lecciones de Git

Accede a todas las lecciones de Git y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Accede GRATIS a Git y certifícate

Certificados de superación de Git

Supera todos los ejercicios de programación del curso de Git y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

En esta lección

Objetivos de aprendizaje de esta lección

  1. Aprender a instalar GitHub Desktop.
  2. Familiarizarse con la interfaz de GitHub Desktop.
  3. Aprender a crear un repositorio.
  4. Conocer los pasos para clonar un repositorio.
  5. Entender cómo realizar commits y push.
  6. Comprender cómo realizar pull.