Si eres un desarrollador o te interesa convertirte en uno, seguro has trabajado, o al menos escuchado sobre Git, el sistema de control de versiones más usado actualmente. En este post te contaremos cómo trabajar en repositorios remotos en Git, para avanzar en tus proyectos de forma colaborativa con tus demás compañeros.
Los sistemas de control de versiones SVN utilizan un único repositorio centralizado para funcionar como un centro de comunicaciones para los desarrolladores. A la hora de colaborar, se pasan conjuntos de cambios entre las copias de trabajo de los desarrolladores y el repositorio central. El modelo de colaboración distribuido en el que se basa Git es completamente diferente, ya que proporciona a cada desarrollador su propia copia del repositorio, con su propio historial local y estructura de ramas.
Por lo general los usuarios necesitan compartir una serie de confirmaciones, en lugar de un solo conjunto de cambios. En vez de confirmar un conjunto de cambios de una copia de trabajo en el repositorio central, Git te permite compartir ramas enteras entre repositorios que se encuentran de forma remota, proporcionados por varios desarrolladores. Los más utilizados son GitHub y GitLab.
¿Qué es git remote?
Git posee el comando git remote, este te permite crear, ver y eliminar conexiones con otros repositorios creados. Las conexiones remotas se asemejan más a marcadores que a enlaces conectados directamente con otros repositorios. En lugar de dar acceso en tiempo real a otro repositorio, funcionan como nombres prácticos que pueden emplearse para hacer referencia a una URL no tan sencilla.
Normalmente, podrías visualizar este proceso en tu pantalla de Git observando los dos repositorios, el tuyo y el de tu compañero, ambos conectados al repositorio central. Pero estos repositorios no estarían representados por sus URL completas, por el contrario, serían etiquetas sencillas para entender el proceso y agilizarlo.
El comando git remote es, principalmente, una interfaz para gestionar una lista de entradas remotas almacenadas en el archivo ./.git/config del repositorio. Para ver el estado actual de la lista remota, se utilizan ciertos comandos.
Creación de repositorios remotos en Git
Algo característico de el comando git remote es también el método sencillo y útil que posee para modificar el archivo ./.git/config de un repositorio. Los comandos git remote add <name> <url> y git remote rm <name> modificarán el archivo /.git/config del repositorio. El resultado de dichos comandos también puede conseguirse editando directamente el archivo ./.git/config con un editor de texto.
Git está diseñado y preparado para proporcionar a cada programador un entorno de desarrollo totalmente aislado. Esto significa que la información no se envía automáticamente entre repositorios. Realmente, los desarrolladores deben extraer commits de nivel superior hacia su repositorio local o enviar sus commits locales al repositorio central de forma manual para que realmente queden anexados. El comando git remote es una manera más simple de enviar URL a estos comandos de «compartición».
Origen remoto del repositorio
Al clonar un repositorio con git clone, se crea automáticamente una conexión remota llamada “origin” (origen) que apunta al repositorio que ha sido clonado. Esto resulta útil para los desarrolladores que crean una copia local de un repositorio central, ya que permite incorporar cambios de nivel superior o publicar confirmaciones locales de una forma más sencilla. Este comportamiento es también la razón por la que la mayoría de los proyectos que son basados en Git llaman «origin» a su repositorio central.
Así mismo, Git admite múltiples formas de hacer referencia a un repositorio remoto. Una de las maneras más fáciles de acceder a uno de ellos es a través de los protocolos HTTP y SSH. El protocolo HTTP brinda un acceso sencillo, anónimo y de solo lectura a un repositorio. Sin embargo, normalmente no se pueden enviar confirmaciones a una dirección HTTP (aunque realmente no convendría permitir envíos anónimos).
Necesitarás una cuenta SSH válida en el equipo host, pero, aparte de eso, Git admite el acceso autenticado mediante SSH listo para usarse. Las modernas y seguras soluciones de alojamiento de terceros, como Bitbucket.com, te proporcionarán estas URL.
Con toda esta información será suficiente para que logres manejar repositorios remotos en Git para realizar proyectos en conjunto con más desarrolladores y así logres perfeccionar tus habilidades en el desarrollo web.
¿Cómo aprender más de Git?
Si después de conocer cómo trabajar repositorios remotos en Git y cómo solucionarlo, te sigue interesando este tema y quieres seguir aprendiendo, con nuestro Bootcamp en Desarrollo Web Full Stack podrás dominar esta y otras herramientas y tecnologías como JavaScript, React, Microservicios y hasta despliegue de servidores en menos de 7 meses. ¡Apúntate ahora!