¿Por que clonar un repositorio remoto con git clone? cuando vamos a trabajar en un ambiente colaborativo que ya cuenta con múltiples proyectos administrados con un Administrador de código fuente como lo es git es muy probable que tengamos que descargar el código que ya se encuentre en dicho repositorio. Git clone nos permite obtener dicho repositorio por completo en nuestro equipo local, podemos obtenerlo desde el Terminal de Visual Studio Code o con Git bash
Lo primero que debemos de hacer es abrir el repositorio del código en Github que deseamos clonar y copiar la url del repositorio que contiene el proyecto que queremos clonar, como lo podemos ver en la siguiente imagen
Enseguida abriremos Visual Studio Code y ejecutaremos la siguiente instrucción en la Terminal
git clone https://github.com/jserranosal74/app-angular.git
Automáticamente se ejecutara la descarga de todo el proyecto y creara la carpeta que en este caso es app-Angular, de echo tu también puedes descargar el proyecto, por ultimo solo agregamos a nuestro Workspace de Visual Studio Code la carpeta descargada y estaremos listos para empezar a trabajar
Si por algún motivo tienes problemas para clonar un repositorio revisa que tengas los permisos necesarios para hacerlo, normalmente los repositorios que son públicos pueden ser clonados sin problema alguno, en cuanto a los repositorios privados en Github vas a necesitar las credenciales necesarias para poder clonarlo.
Diferencias entre git clone y git pull
Pero ¿Y cual es la diferencia con git pull?
Podemos analizar sus diferencias
Git clone copia todos los archivos a la máquina local, mientras que git pull solo copia los archivos modificados a la máquina local.
Git clone crea una conexión entre ambos repositorios, mientras que git pull requiere que se establezca una conexión antes de que pueda funcionar.
Git clone es una solicitud individual en sí misma, mientras que git pull es una combinación de git fetch seguido de git merge.
Git clone no tiene posibilidades de generar conflictos, mientras que las solicitudes de extracción de git pull pueden generar conflictos al extraer archivos.
Por otro lado con git pull podríamos descargar solo los cambios de los archivos ya modificados por los otros programadores del ambiente de desarrollo en el cual estemos trabajando
Consideraciones adicionales al usar git pull
Por default, git pull
hace dos cosas.
- Actualiza la rama de trabajo actual (la rama a la que se ha cambiado actualmente)
- Actualiza las referencias de rama remota para todas las demás ramas.
git pull
recupera (git fetch
) las nuevas confirmaciones y las fusiona (git merge
) en tu rama local.
Ejemplo de ejecución
Si existieran cambios en la rama o branch main local y otros cambios en la rama main remota pasaría algo como lo siguiente:
Y aquí es precisamente donde se complica un poco la unificación (merge) de los cambios, solo es cuestión de hacer la unificación correcta del código y listo.
Ejecutamos la sincronización (git fetch) y completamos el merge del repositorio local con el repositorio remoto y listo
Insisto, necesitas practicar e imaginarte los posibles escenarios para que domines el proceso, en realidad si llegaste a usar un administrador de código fuente como TortoiseSVN (SubVersion que creo que aun existe) de la época del caldo, no deberías de tener problemas para entender el funcionamiento de git ya que es muy similar.
Te invito a revisar el articulo Como controlar nuestro código fuente con Git y GitHub desde Visual Studio Code
Conclusiones
Cada una de los comandos descritos en el articulo tiene su propósito y por supuesto nos sirven para cosas diferentes, te recomiendo crearte una cuenta en github y probar todos los comandos que hasta ahorita hemos visto de git, recuerda que la practica hace al maestro
¿Te quedaste con alguna duda? coméntanoslo.
¿Necesitas ayuda con tu desarrollo de software o con el marketing de tu negocio? contáctanos.
Comparte este articulo con alguien a quien le pueda interesar, es gratis.
Jesús Serrano
Desarrollador web con amplia experiencia en diferentes lenguajes de programación, Servidores de Bases de datos y servidores web.
El que no vive para servir no sirve para vivir
Contactar
Si necesitas ayuda con tu desarrollo de software o el marketing de tu negocio no dudes en ponerte en contacto con nosotros.
Teléfono: 4772288223