Cómo pasar cambios de una rama a otra

Como pasar los cambios de una rama a otra.

Hoy vamos a hablar un poco de Git y veremos como pasar los cambios hechos en una rama a otra sin perder nada por el camino.

No os ha pasado nunca que por A o por B habéis tenido que trabajar en la rama master y que una feature ha tomado más peso que otra que en la que estábamos trabajando? O que sin darnos cuenta hemos hecho los cambios en master en vez de hacer los cambios en la rama que le tocaba.

¿Qué hacer cuando hemos escrito código en master y debería estar en otra rama?

Bueno tranquilos que para todo hay solución menos para la muerte y los científicos están trabajando en ello.

Pongámonos en situación, sin darnos cuenta estamos trabajando en la rama master, ya sea porque necesitamos que algún tester vea lo que estamos haciendo en nuestro ordenador o porque no nos hemos acordado de trabajar en la rama nueva.

Entonces lo que vamos a hacer es  pasarlo todo a una rama nueva, para que así podamos mantener lo que ya habíamos adelantado y seguir con lo nuevo.

Para hacerlo si aún no hemos hecho commit es sencillo, simplemente tendremos que hacer lo siguiente:

Esto lo que hará será crearnos una nueva rama con todo lo que tengamos en master y nos moverá a dicha rama.

Una vez allí, simplemente añadiremos todos los cambios al stage y haremos un commit, para guardar los cambios realizados:

Entonces volvemos a la rama master:

Con un git status, veremos que ya no están dichos cambios y todos los cambios se encuentran en la rama que hemos creado para dicho fin.

¿Qué hacer si ya hemos hecho commit en master?

En ese caso tendremos que deshacer dicho commit.

Es tan simple como ejecutar el siguiente comando de git:

Y con eso ya habremos deshecho el commit y podremos aplicar todo lo que hemos mencionado anteriormente.

Eso es todo, ¿habéis visto que fácil? espero que os haya servido de ayuda.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Comparte si te ha gustado:
Share on Facebook
Facebook
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Tumblr
Tumblr
0Digg this
Digg

¿Cómo forzar un git pull?

Hoy os traigo una solución a cuando estamos trabajando con Git flow, o simplemente con git, y no nos damos cuenta que los cambios lo estamos realizando en la rama master en lugar de la rama donde tendríamos que estar. O simplemente la hemos liado parda en la rama master y queremos dejarlo todo como estaba al principio de meter la pata.

Así que sin más dilación voy a contaros cómo forzar un git pull para dejar nuestra rama master a como estaba antes de tocar el código, al final añado como conservar lo que hay en master en otra rama, para así no perder nada de lo realizado y pasarlo a la rama que toca.

Primero de todo usaremos el siguiente comando git:

Con este comando, nos bajaremos lo último que haya, de todas las ramas, pero sin que nos haga hacer merge ni hacer un rebase de nada.

En caso de que no queramos obtenerlo todo, también podríamos ejecutar esto:

Así solo obtendríamos lo que hay en la rama origin/master y no obtenerlo todo, que a veces depende que proyecto… puede ralentizar la cosa.

Y ahora simplemente tenemos que hacer lo siguiente:

O en el caso de que queramos hacer lo propio con una rama ejecutaremos lo siguiente:

Así con el git reset, lo que hacemos es resetear la rama master a lo que hemos cogido antes con el git –fetch all. La opción de –hard, nos cambia todos los archivos que tenemos por los archivos de origin/master y así nuestro repositorio se quedará como estaba antes de hacer lo que hubiéramos hecho.

También podríamos guardar los cambios realizados en una nueva rama, antes de forzar el pull, por si no estamos seguros de si queremos perder nuestros datos, o simplemente nos hemos equivocado de rama a la hora de aplicar cambios.

Como veis aquí guardamos primero en una rama, todos los cambios realizados en master y de esta forma podemos resetear la rama master, forzar el pull, y así tener en una rama los cambios realizados, y el master como el de origin/master.

Espero que os haya servido y tengáis bien organizadas vuestras ramas, recordad que git es muy potente, pero que al ser tan potente hay que ir con mucho cuidado.

Y recordad de comentar siempre, en vuestro código y en el blog 😉

Comparte si te ha gustado:
Share on Facebook
Facebook
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Tumblr
Tumblr
0Digg this
Digg