Vi los videos varias veces del aula 4 pero no entendi el git merch con el git rebase, no entiendo si actualizan la rama master o solo crean commits alternos
Vi los videos varias veces del aula 4 pero no entendi el git merch con el git rebase, no entiendo si actualizan la rama master o solo crean commits alternos
misma pregunta
Más allá de las diferencias entre el merge y rebase, ambas sirven para unificar distintas ramas. supongamos un caso concreto: A trabaja en una rama, pongamos en el master, B en otra (cada uno en distintas partes de un html), pongamos la rama footer. Entonces llega el momento en que ambos terminan su trabajo. Gustan los cambios hechos en el master y también en la rama "footer". Pero si A se para en el master, A no puede ver los cambios que hizo B, puesto que los hizo en la rama "footer". Entonces, para ver esos cambios, A deberá pasarse a la rama "footer". Allí A verá los cambios de B, pero no los cambios de A (puesto que están en la rama master). Entonces, llegó el momento de hacer un merge, es decir, unificar ambas ramas, hacer una sola, un master con todos los cambios, los de A y los de B. Para eso, A deberá pararse en el master, y ahí hacer el merge con los cambios de B: git merge footer. Acá estoy diciendo que voy a traer al master todos los cambios del footer que hizo B. Pero también puedo pararme en la rama "footer" (con git checkout footer), y desde allí, traer a la rama footer todos los cambios que hizo a en master.
En definitiva, primero nos paramos en una rama específica, y desde allí traemos mediante el merge los cambios que hay en otra rama: hacemos de las dos, una sola.
Espero haber sido de ayuda, cumpas. Abrazo
Muchas gracias por la ayuda, me quedó un poco más claro, imagina la rama master ya para proyectos grandes se utiliza solo para el proyecto funcional
El tema de uso de ramas, Cristian, no necesariamente responde a proyectos grandes o en los que participa un equipo de trabajo. También podés usar ramas en un proyecto de una página web pequeña en la que trabajes vos solo. Imaginate esta situación: estás haciendo una página web, ya la tenés terminada, pero te gustaría mejorarla, agregarle funcionalidades que quizás el cliente no te pidió pero con las que te gustaría sorprenderlo. Entonces, como ya la tenés terminada (sería la rama master), querés probar con unos cambios que no sabés si te van a gustar o si van a funcionar. Entonces para probar creas una nueva rama. En esa nueva rama ("mejoras") vas a hacer todos los cambios y mejoras que creas conveniente. Puede suceder que esos cambios te gusten y decidas que esa rama, "mejoras", sea tu pagina web. Pero también puede pasar que esas modificaciones que hiciste no te gustaron y le quitaron atractivo a tu página, por lo que decides que quedaba mejor como estaba antes. Simplemente tienes que volver a tu rama master y ahí tendrás tu página con la primera versión terminada, sin esos cambios finales que no te gustaron. ¿Se entiende?