¡Bienvenidos a Servicios Distribuidos en Git! En esta experiencia académica, examinarás los fundamentos de dos servicios muy populares: GitLab y GitHub. Ambas son plataformas en línea que permiten alojar repositorios Git y colaborar en proyectos con otras personas; por tanto, resulta indispensable conocer las bases de estos servicios, así como las características de colaboración y control de versiones de Git que ofrecen.
Asimismo, en este tema aprenderás cómo crear una cuenta en línea en el servicio más popular de alojamiento de repositorios para programadores; por último, comprenderás las diferencias entre GitLab y GitHub, así como cuál de ellos es el mejor para las necesidades de tu proyecto.
Git remote
Para trabajar en conjunto en un proyecto de Git, necesitas saber cómo manejar repositorios alojados en línea. Estos son versiones de los proyectos que se encuentran en la red, así que puedes tener varios y cada uno puede contener diferentes niveles de acceso, como solo lectura o lectura y escritura. Colaborar con otras personas implica gestionar estos repositorios remotos mediante el envío y recibo de información, sobre todo cuando requieras compartir tu trabajo. En este sentido, la gestión de repositorios remotos conlleva ciertos conocimientos que debes adquirir: agregar un repositorio, eliminar los que ya no son válidos, manejar varias ramas remotas, determinar si deben o no ser consecutivas, entre otros (Git, s.f.).
Para verificar los remotos que tienes configurados, usa el comando “git remote”, ya que esto te mostrará los nombres de cada uno. En caso de que hayas clonado tu repositorio, la documentación oficial de Git (Git, s.f.) menciona que te aparecerá al menos una etiqueta “origin” (“origen”), pues este es el nombre asignado por defecto cuando se procede con dicha acción.
Fuente: Git. (s.f.). 2.5 Fundamentos de Git - Trabajar con Remotos.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Trabajar-con-Remotos
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Al añadir el sufijo “-v” en “git remote”, se le indica que muestre las URL asociadas con el nombre, las cuales sirven para leer y escribir en el remoto (Git, s.f.).
Fuente: Git. (s.f.). 2.5 Fundamentos de Git - Trabajar con Remotos.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Trabajar-con-Remotos
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
En caso de que no hayas clonado tu repositorio y desees asociarlo con un remoto, es decir, añadir un repositorio remoto y vincularlo con un nombre al que se pueda hacer referencia, ejecuta la siguiente sintaxis (Git, s.f.): “git remote add [nombre] [url]”. Observa el ejemplo:
Fuente: Git. (s.f.). 2.5 Fundamentos de Git - Trabajar con Remotos.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Trabajar-con-Remotos
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
GitLab
GitLab es una herramienta de código abierto basada en Git, opera desde el 2011 y se utiliza para la planificación, desarrollo, integración y despliegue de software (Keepcoding, 2022). Ofrece una plataforma muy completa de gestión de proyectos de software, ya que incluye características como control de versiones, gestión de ramas o tareas, integración continua y despliegue, entre otras; además, proporciona una interfaz web para facilitar la administración de permisos, así como la colaboración entre los miembros del equipo. Por estos motivos, se utiliza con frecuencia en el ámbito empresarial, sobre todo para la gestión de proyectos de desarrollo de software.
Algunas de sus principales características son las siguientes:
Git pull
Según Atlassian (s.f.-a), con el comando “git pull” se extrae y descarga contenido desde un repositorio remoto y, además, el local se actualiza al instante, pues busca reflejar los nuevos elementos. En este caso, “git pull” resulta una combinación de los comandos "git fetch" y "git merge", ya que primero se descargan los cambios del repositorio remoto y luego se fusionan con el local. Por estos motivos, el comando "git pull" se usa para mantener tu repositorio local actualizado con las modificaciones más recientes del remoto, pues se automatiza el proceso de descarga y fusión de cambios.
La forma básica para emplear el comando “git pull” se describe en el siguiente ejemplo:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
En caso de ser necesario, recupera la copia del origen remoto especificado en la rama actual y fusiónala de inmediato en la copia local (Atlassian, s.f.-a).
Git push
Atlassian (s.f.-b) asegura que el comando “git push” se usa para cargar contenido del repositorio local a uno remoto (lo opuesto a “git pull”); es decir, permite subir los commits realizados en desde una rama específica del repositorio local hasta el remoto correspondiente. Al ejecutar “git push”, se actualizarán los archivos en el repositorio remoto con los cambios realizados en el local; además, puede usarse para crear una nueva rama en el repositorio remoto a partir de una ya existente en el local. En este sentido, considera que “git push” solo enviará los cambios previamente registrados mediante el comando “git commit”.
La sintaxis básica del comando “git push” es esta:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Donde:
Por ejemplo, si quieres enviar los cambios de la rama "master" del repositorio local al remoto "origin", esta sería la sintaxis adecuada:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
GitHub
GitHub es una plataforma de desarrollo colaborativo basada en Git, que permite a los desarrolladores alojar, compartir y colaborar en proyectos de software. Proporciona una interfaz web fácil de usar para gestionar repositorios Git, así como una variedad de herramientas y características que ayudan en el desarrollo de software, incluyendo el seguimiento de problemas, la gestión de tareas, la colaboración en tiempo real y la integración continua. GitHub también cuenta con una comunidad en línea para desarrolladores, donde se comparten y descubren proyectos, se colabora en trabajos de código abierto y se aprende de los colegas.
GitHub es una plataforma de código abierto, sus orígenes se remontan a 2005 y creció hasta convertirse en uno de los CVS más populares del mercado. De hecho, Gustavo Bustos (2023) asegura que cerca del 87% de los desarrolladores de software lo utiliza en sus proyectos.
Creación y configuración de la cuenta
Crear una cuenta en GitHub no es muy diferente a como se hace en cualquier red social o plataforma, pues también necesitas una cuenta activa de correo electrónico personal o empresarial. Si ya cuentas con este requisito, sigue los pasos que se describen a continuación:
En este sentido, trata de cumplir con las prácticas de seguridad recomendadas, es decir, elige una contraseña adecuada y guarda tus credenciales en un lugar donde estén a salvo.
El uso y descarga del software deberá apegarse a los términos y condiciones del sitio oficial del fabricante y su uso será responsabilidad de quien lo descargue. Tecmilenio no tiene licencia ni posee los derechos sobre dicho software.
Agregar una licencia
Agregar una licencia a un proyecto de GitHub es un proceso sencillo y consiste en los siguientes pasos:
No olvides que, para añadir una licencia, necesitas contar con los derechos de administrador en el repositorio.
En este tema analizaste varios aspectos sobre los servicios distribuidos de GitLab y GitHub; asimismo, conociste los principios básicos de estos servicios, los cuales te permiten almacenar y gestionar tus repositorios remotamente, así como colaborar con otros desarrolladores de manera eficiente, segura y cooperativa. También aprendiste las características y funcionalidades de ambos servicios; además, examinaste la manera de utilizarlos para realizar acciones comunes, por ejemplo, pull, push y crear ramas remotas.
GitLab y GitHub son herramientas esenciales para cualquier desarrollador que trabaje en proyectos colaborativos; ahora que conoces más sobre ellos, estás preparado para utilizarlos, cooperar con otras personas o almacenar tu trabajo de forma segura. Recuerda que estos servicios son apenas una parte de Git, pero resultan esenciales para avanzar en proyectos distribuidos.
Asegúrate de:
Los siguientes enlaces son externos a la Universidad Tecmilenio, al acceder a ellos considera que debes apegarte a sus términos y condiciones.
Lecturas
Para conocer más acerca de servicios distribuidos (GitLab y GitHub), te sugerimos revisar lo siguiente:
Videos
Para conocer más acerca de servicios distribuidos (GitLab y GitHub), te sugerimos revisar lo siguiente: