Pregunta

Supongo que permite mover cambios de una rama a la siguiente, pero para eso está la selección selectiva y si no está confirmando sus cambios, ¿quizás no debería moverlos?

En ocasiones apliqué el alijo equivocado en la rama equivocada, lo que me dejó preguntándome sobre esta pregunta.

¿Fue útil?

Solución

Como se mencionó, si desea un "alijo por sucursal", realmente desea una nueva sucursal que se bifurque de la sucursal existente.

Además, además del hecho ya mencionado de que el alijo te permite acceder a una rama en la que estás trabajando, también te permite cambiar ramas antes de haber cometido todo.Esto es útil no tanto para seleccionar en el sentido habitual como para seleccionar tu copia de trabajo.

F.ej., mientras trabajo en una rama de características, a menudo noto errores menores o impurezas cosméticas en el código que no son relevantes para esa rama.Bueno, los arreglo de inmediato.Cuando llega el momento de comprometerme, hago selectivamente los cambios relevantes, pero no las correcciones ni los cosméticos.En lugar de eso, los guardo, lo que me permite cambiar a mi rama de correcciones menores en estable, donde luego puedo aplicar el almacenamiento y confirmar cada corrección menor por separado.(Dependiendo de los cambios en cuestión, también guardaré algunos de ellos una vez más, para cambiar a una rama de funciones diferente, donde aplico aquellos.)

Esto me permite profundizar en el modo de programación cuando estoy trabajando y no preocuparme por la biblioteca adecuada de mi código.Luego, cuando me tomo un descanso mental, puedo regresar y ordenar cuidadosamente mis cambios en todos los estantes correctos.

Si el alijo no fuera global, este tipo de flujo de trabajo sería mucho más difícil de realizar.

Otros consejos

A partir de Git 1.6, ahora puedes aplicar escondites a ramas usando

git stash branch name_of_new_branch

Git creará la nueva rama por ti y ¡compruébala!Para más información, ver

  • el libro git

  • info git-stash y busca en la opción =branch.

Supongo que puedes mover los alijos usando

git stash branch <branch | new_branch> [<stash>]

y para ver una lista de tus reservas, usa

git stash list

Referencia

Si desea un "alijo" que se ejecute en una rama, haga algo como esto para almacenar sus cambios en una nueva rama de su rama actual.

git checkout -b new_stash
git commit -a -m "stashed changes"

para deshacer el alijo

git reset HEAD^
git branch -d new_stash

git stash es especialmente útil porque puedes introducir cambios en un árbol sucio, es decir.si tienes ediciones pendientes y quieres hacer una

git pull

y no puedes, puedes guardar tus cambios, extraerlos y luego aplicarlos

git stash
git pull
git stash apply
git stash clear

¡Espero que esto haya ayudado!

git-stash me resulta muy útil para mover los cambios que aún no están registrados a una rama diferente a la que está actualmente desprotegida.

Por ejemplo, a menudo me encuentro haciendo cambios simples en una rama de corrección de errores;solo para descubrir que el cambio en el que estoy trabajando es más complejo de lo que supuse al principio.Git-stash es la forma más sencilla de mover ese conjunto de cambios a una rama diferente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top