Fundamentos de Git y control de versiones

1

¿Qué son Git y GitHub?

2

Configuración Inicial de Git: init y config

3

Comandos Básicos de Git: add, commit y log

4

Ramas y Fusión de Cambios: branch, merge, switch y checkout

5

Volviendo en el Tiempo en Git: reset y revert

6

Gestión de versiones: tag y checkout

7

Cómo Resolver Conflictos de Ramas en Git

8

Usando Git desde Visual Studio Code

Quiz: Fundamentos de Git y control de versiones

Introducción a GitHub

9

Por qué GitHub es clave para los Desarrolladores

10

Creación y configuración de cuenta de GitHub

11

¿Cómo integrar Git y GitHub en un flujo de trabajo profesional?

12

Gestión de Repositorios en GitHub

13

Productos de GitHub: precios, planes y apps

14

Cómo configurar SSH para GitHub: Guía paso a paso

15

Clone, fork y estrellas a repositorios

16

Trabajo con repositorios remotos: push, pull y fetch

17

Gestión de Issues y Discussions en GitHub

18

Colaboración sin errores: Pull Requests en GitHub

Quiz: Introducción a GitHub

Herramientas de colaboración en GitHub

19

Automatización y Gestión de Proyectos en GitHub

20

Introducción a GitHub Projects

21

Documentación en GitHub con Markdown

22

Personaliza tu Perfil de GitHub con Markdown

23

Uso de Wikis

24

Cómo usar GitHub Gist

25

Cómo usar GitHub Pages

Quiz: Herramientas de colaboración en GitHub

GitHub Codespaces

26

Cómo usar GitHub Codespaces: Configuración y Desarrollo en la Nube

27

Cómo configurar entornos de desarrollo avanzados en GitHub Codespaces

28

Pair Programming con Codespaces y Visual Studio Code

29

Cómo usar GitHub.dev Editor

Quiz: GitHub Codespaces

Seguridad y buenas prácticas en GitHub

30

Cómo Usar Tokens en GitHub para Acceso Seguro a Repositorios Privados

31

Gestión de Dependencias y Seguridad con Dependabot en GitHub

32

Mantenimiento de repositorios seguros

33

Gestión de datos sensibles y políticas de seguridad

Quiz: Seguridad y buenas prácticas en GitHub

Administración de GitHub

34

Administración de organizaciones en GitHub

35

Cómo personalizar tu perfil de GitHub con GitHub Actions

36

GitHub CLI para administración

Quiz: Administración de GitHub

Gestión de Cambios con Pull Requests

37

Importancia de los Pull Requests y Ramas en GitHub

38

Revisión y Fusión de Pull Requests

39

Git Rebase

Quiz: Gestión de Cambios con Pull Requests

GitHub Releases

40

Introducción a los GitHub Releases

41

Publicación de paquetes en GitHub y PyPI

Quiz: GitHub Releases

Cierre

42

ProTips: Mejora tu productividad diaria en GitHub

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Trabajo con repositorios remotos: push, pull y fetch

16/42
Recursos

Aportes 8

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Claro, aquí tienes las definiciones y ejemplos de los comandos `push`, `pull` y `fetch` en Git: ### 1. `git push` **Definición**Esto envía tus cambios en la rama `main` al repositorio remoto llamado `origin`.Esto envía tus cambios en la rama `main` al repositorio remoto llamado `origin`.: Este comando se utiliza para enviar los cambios locales (commits) a un repositorio remoto. Es decir, actualiza el repositorio en línea con los cambios que has realizado en tu copia local. ```js git push origin main ``` Esto envía tus cambios en la rama `main` al repositorio remoto llamado `origin`. ### 2. `git pull` **Definición**: Este comando se utiliza para obtener y fusionar (merge) cambios desde un repositorio remoto hacia tu copia local. Es como un `fetch` seguido de un `merge`. ```js git pull origin main ```Esto obtiene los últimos cambios de la rama `main` del repositorio remoto `origin` y los fusiona con tu rama local actual. ### 3. `git fetch` **Definición**: Este comando descarga los cambios del repositorio remoto, pero no los fusiona automáticamente en tu rama actual. Simplemente actualiza la información sobre las ramas remotas. ```js git fetch origin ```Esto descarga los cambios desde el repositorio remoto `origin`, pero no los aplica a tu rama local. Puedes ver los cambios en las ramas remotas antes de decidir fusionarlos. ### Resumen * `push`: Envia tus cambios locales al remoto. * `pull`: Trae y fusiona cambios del remoto a tu local. * `fetch`: Trae cambios del remoto sin fusionarlos automáticamente.
![](https://static.platzi.com/media/user_upload/%7B78E5A2EC-E722-4677-A199-C2F918E7F734%7D-b78cbda0-076e-4311-b7ec-4654ee69398a.jpg)
Esto ocurre porque Git almacena los cambios en commits, y si haces varios cambios en tu archivo y luego realizas un solo commit, todos esos cambios se agrupan en una única línea de commit. Cuando escribes un comentario en tu commit, asegúrate de que sea claro y descriptivo. Si realizas varios commits antes de hacer un `git push`, cada uno aparecerá como líneas separadas en GitHub. Para ver las diferencias en tu historia de commits, puedes usar `git log` o revisar la sección de commits en tu repositorio en GitHub.
Estaba probando el comando: `git log <rama>..origin/<rama>` Para ver si te mostraba el historial del repositorio remoto y no funciona en la terminal, no muestra nada. El comando solo funciona cuando ya has hecho un: `git fetch <rama_name>` Me he quedado con curiosidad, la verdad, estaba también probando desde la interfaz de VisualStudioCode y es más sencillo hacer un fetch. Aunque, de igual, solo te muestra el historial cuando haces el fecth en VisualStudioCode
### COMO HACER UN PUSH DESDE LA TERMINAL 1. `git push`: Es el comando usado para enviar (o "empujar") cambios desde tu repositorio local hacia un repositorio remoto. 2. `u`: Es la abreviatura de `-set-upstream`. Este indicador configura la rama remota especificada como la rama "ascendente" (upstream) para la rama local actual. Esto significa que futuras ejecuciones de `git push` o `git pull` en esta rama local no necesitarán que especifiques explícitamente la rama y el remoto, porque estarán enlazados. 3. `origin`: Es el nombre del remoto al que estás enviando los cambios. Por convención, `origin` suele referirse al repositorio remoto que clonaste inicialmente. 4. `main`: Es el nombre de la rama remota a la que estás enviando los cambios. En este caso, es la rama principal del repositorio. ### COMO TRAER LOS CAMBIOS DEL REPOSITORIO REMOTO A LOCAL `git pull` > El comando `git pull` se utiliza en Git para sincronizar el repositorio local con el repositorio remoto, descargando los cambios más recientes y fusionándolos automáticamente en la rama local activa. ### COMO TRAER LO CAMBIOS DEL REPOSITORIO REMOTO Y NO FUCIONARLOS A LA RAMA LOCAL HASTA LO REVISAR Y VALIDAR SI QUIERO FUCIONAR 1. `git fetch origin` > El comando `git fetch origin` en Git se utiliza para **descargar los cambios del repositorio remoto (**`origin`**)** sin fusionarlos automáticamente con tu rama local. Es una operación segura que permite revisar los cambios antes de aplicarlos. 2. `git log main..origin/main` > Muestra los commits que están en `origin/main` (rama remota) y que no están en `main` (rama local) 1. `git log`: Muestra el historial de commits en un formato legible. 2. `main`: Representa tu rama local principal. 3. (`..`): El uso de **dos puntos (**`..`**)** en el comando tiene un propósito específico en Git:**comparar dos rangos de commits**. 4. `origin/main`: Representa la rama principal del repositorio remoto. 5. `main..origin/main`: Especifica el rango de commits para listar 6. `origin/main`: Commits que están en `origin/main` pero no en `main` ### COMO FUCIONAR EL REPOSITORIO REMOTO CON LA RAMA LOCAL DESPUES DE HACER UN GIT FETCH ORIGIN `git merge origin/main` > El comando `git merge origin/main` se utiliza para **fusionar los cambios** de la rama remota `origin/main` en tu rama local activa es como un `git pull` 1. `git merge`: Es el comando para fusionar ramas en Git. Combina los cambios de otra rama (o referencia) con la rama en la que estás trabajando actualmente. 2. `origin/main`: Especifica que deseas fusionar los cambios de la rama remota `main` (ubicada en el remoto `origin`) con tu rama local activa.
El trabajo con repositorios remotos en Git implica tres comandos fundamentales: `git push`, `git pull` y `git fetch`. - **git push**: Este comando se utiliza para enviar cambios desde tu repositorio local a un repositorio remoto, como GitHub. Es esencial después de realizar commits en tu rama local. - **git pull**: Este comando jala actualizaciones desde el repositorio remoto y las fusiona automáticamente con tu rama local. Es útil para mantener tu trabajo sincronizado con los cambios que otros han hecho. - **git fetch**: A diferencia de `git pull`, este comando solo descarga las actualizaciones del repositorio remoto sin fusionarlas automáticamente. Te permite revisar los cambios y decidir si los integras. Estos comandos son esenciales para colaborar eficientemente en proyectos de software.
extraño a Freddy..
Resumen: `git push`Envía tus commits locales al repositorio remoto. `git pull`Descarga y fusiona cambios del repositorio remoto. `git fetch`Descarga cambios del repositorio remoto (sin fusionar).