Git Fetch es el comando que le dice al repositorio local que hay cambios disponibles en el repositorio remoto sin traer los cambios al repositorio local. Git Pull, por otro lado, trae la copia de los cambios del directorio remoto al repositorio local. Veamos Git Fetch y Git Pull por separado con la ayuda de un ejemplo.
Buscar Git
Vamos a crear un archivo llamado demo.txt con el contenido » Hello Geeks» en su interior, inicialicemos el directorio en un repositorio de git y envíemos los cambios a un repositorio remoto.
- iniciar git
- git agregar <Nombre de archivo>
- git commit -m <Mensaje de confirmación>
- git remote add origin <Enlace a su repositorio remoto>
- git push origen <nombre de la rama>
Ahora, tenemos mi demo.txt en el repositorio remoto.
Los repositorios local y remoto ahora están sincronizados y tienen el mismo contenido en ambos lugares. Ahora actualicemos nuestro demo.txt en el repositorio remoto.
Ahora que hemos actualizado nuestro demo.txt de forma remota, traigamos los cambios a nuestro repositorio local. Nuestro repositorio local tiene solo 1 confirmación, mientras que el repositorio remoto ahora tiene 2 confirmaciones ( observe la segunda confirmación a partir de 4c4fcb8 ). Usemos el comando git fetch para ver en el repositorio local si tenemos un cambio en el repositorio remoto o no. Antes de eso, usemos el comando git log para ver nuestras confirmaciones anteriores.
Podemos ver que después de usar git fetch obtenemos la información de que se ha realizado alguna confirmación en el repositorio remoto. ( Observe el 4c4fcb8 que son las iniciales de nuestro segundo compromiso en un repositorio remoto ). Para fusionar estos cambios en nuestro repositorio local, necesitamos usar el comando git merge origin/<branch name> .
Echemos un vistazo a nuestras confirmaciones en el repositorio local usandoel comando de registro de git .
Y obtuvimos nuestra confirmación de repositorio remoto en nuestro repositorio local. Así es como funciona git fetch. Ahora echemos un vistazo al comando git pull .
Tirar Git
Hagamos más cambios en nuestro archivo demo.txt en el repositorio remoto.
Ahora, tenemos 3 confirmaciones en nuestro repositorio remoto mientras que 2 confirmaciones en nuestro repositorio local. ( Observe el tercer compromiso que comienza con 09d828f ). Traigamos ahora este cambio a nuestro repositorio local usando el comando git pull origin <branch name> .
Podemos ver que con la ayuda del comando git pull , buscamos y fusionamos directamente nuestro repositorio remoto con el repositorio local.
git pull = git buscar + git fusionar
Veamos cómo se ve nuestro demo.txt en el repositorio local:
Y ahora nuestros repositorios remotos y locales están nuevamente sincronizados entre sí. Entonces, de los ejemplos anteriores, podemos concluir que:
Tabla de diferencias
Buscar Git |
Tirar Git |
---|---|
Brinda la información de un nuevo cambio desde un repositorio remoto sin fusionarse con la rama actual | Trae la copia de todos los cambios desde un repositorio remoto y los fusiona en la rama actual |
Los datos del repositorio se actualizan en el directorio .git | El repositorio local se actualiza directamente |
Se pueden revisar las confirmaciones y los cambios. | Actualiza los cambios en el repositorio local inmediatamente. |
Sin posibilidad de conflictos de fusión. | Los conflictos de fusión son posibles si los repositorios remoto y local han realizado cambios en el mismo lugar. |
Publicación traducida automáticamente
Artículo escrito por atharvapaliwal7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA