Git - Mejor entendimiento de las ramas

 
Vista:
sin imagen de perfil
Val: 23
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por stack (13 intervenciones) el 18/07/2019 08:15:44
Buenas,

Tengo dudas de las ramas que crea git, y de porque se usa cada una de ellas.

Hasta ahora lo que he aprendido es que hay varias ramas "duplicadas" (hasta que las cambiamos claro).

un ejemplo sería:

En remoto
- master
- dev

Y tras clonarlas (o de un git fetch para las añadidas después), tendríamos:

En Remoto (bitbucket, github, gitlab, etc...)
- master
- dev

En Local (Nuestro ordenador)
- origin/master
- origin/dev
- master
- dev

Si estas en dev (local) y haces cambios origin/dev(local) sigue igual, si un compañero sube camios al remoto, entonces nuestras ramas en local serían todas diferentes con respecto a remoto

origin/dev (local) != dev (local) != dev (remoto

Primero me gustaría saber si hasta este punto esta todo correcto, y lo siguiente que me gustaría saber es:

estando en dev,
1
git pull origin dev
¿actualiza origin/dev (local) y dev (local)?

¿porque al hacer
1
git merge --no-ff origin/dev
o
1
git rebase origin/dev
se usa origin dev y no origin dev como en el pull?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 109
Oro
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por joel (36 intervenciones) el 18/07/2019 10:56:30
Hola Stack... te respondo...

¿actualiza origin/dev (local) y dev (local)?
Si, hace dos pasos en uno...
1
2
git fetch origin dev
git merge origin/dev

se usa origin dev y no origin dev como en el pull?
No se entiende tu duda... "usa origin dev y no origin dev"¿?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por stack (13 intervenciones) el 18/07/2019 11:32:59
Lo siento, no me fijé bien, uno es origin dev y el otro es origin/dev (con la barra).

Mi duda sería cuando y porque se usa una u otra
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 109
Oro
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por joel (36 intervenciones) el 18/07/2019 17:28:05
No se en que momento tienes esa duda...

Por ejemplo aquí:
1
git fetch origin dev
Le indicas que se descargue del repositorio origin (podría ser cualquier otro nombre) se descargue la rama dev
Entonces, en tu maquina queda como origin/dev, por lo que siempre que hagas referencia a la copia de la rama que hay en origin, tienes que hacerlo así: origin/dev
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por stack (13 intervenciones) el 19/07/2019 09:40:38
Tengo la duda de que, para coger los cambios en la rama dev remota, usamos:

1
$ git pull origin dev

Pero para hacer rebase, cogiendo los cambios que también hay en remoto (o eso supongo) se usa:

1
$git rebase origin/dev

entonces, si los dos implican actualizar la rama actual con lo que hay en remoto ¿porque se usan de forma diferente?

Lo que pienso es que, por tener todo actualizado, se da el rodeo de actualizar primero la rama origin/dev, (¿que esta en nuestro ordenador?), con dev (remoto), y luego de esa rama actualizamos la nuestra.

Se que ha veces en git se dan rodeos, pero no estoy seguro de que este acertado en mis conclusiones
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 109
Oro
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por joel (36 intervenciones) el 19/07/2019 19:06:05
Pero no siempre te interesara actualizar tu rama local... es mas muchas veces, cuando trabajamos varios en un proyecto, cada uno tiene su rama dev... por ejemplo, yo utilizo: origin/joel/dev-tema así queda muy claras mis ramas de las de mis compañeros
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por stack (13 intervenciones) el 22/07/2019 08:33:20
De modo que en vez de hacer

1
$ git rebase origin/dev

podría hacer

1
$ git rebase origin dev

Y del mismo modo, después de hacer un
1
$ git fetch
podría hacer:

1
$git pull origin/dev

en vez de:

1
$ git pull origin dev

no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 109
Oro
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por joel (36 intervenciones) el 22/07/2019 13:00:43
esto:
1
git rebase origin/dev
es lo mismo que esto:
1
git rebase origin dev
con la diferencia que el primero haces el rebase contra la copia que tienes en local y el segundo lo haces contra la copia que esta en el servidor...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 23
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por stack (13 intervenciones) el 23/07/2019 08:16:48
Genial, muchas gracias, creo que con esta confirmación ya lo tengo todo mucho más claro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 109
Oro
Ha mantenido su posición en Git (en relación al último mes)
Gráfica de Git

Mejor entendimiento de las ramas

Publicado por joel (36 intervenciones) el 23/07/2019 16:13:14
Al principio es un tanto liado estos temas, pero una vez lo entiendas correctamente vas a ver que es super potente!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar