how - rebase strategy git
Redoing Commit History en GIT sin Rebase (2)
Desde que hice mi última pregunta, que resultó ser una redistribución con GIT , he decidido que no quiero volver a hacer ningún caso. En su lugar quiero:
- Rama
- Trabajo trabajo trabajo, check in y push en todo momento.
- Deseche todos esos compromisos y pretenda que nunca sucedieron (por lo tanto, un compromiso limpio al final del trabajo)
Lo hago actualmente copiando los archivos a un nuevo directorio y luego volviéndolos a copiar en una nueva rama (ramificada en el mismo punto que mi rama de trabajo), y luego fusionándolos en el master
o donde sea.
¿Es esto simplemente malo y por qué? Más importante: ¿Existe una forma mejor / GIT de hacer esto? git rebase -i
me obliga a unir (y escoger, y aplastar).
Lo más fácil de hacer es un reinicio por software.
Así que revisa tu rama temática:
git checkout -b topic master
trabajo Trabajo trabajo.
git commit
git commit
git commit
git commit
Feliz con esto, puedes hacer un nuevo single de confirmación sobre el master
git reset --soft master
git commit
Ahora fusione para dominar (será un avance rápido) y ordene la rama del tema. (Tenga en cuenta que no necesita hacer esto si está preparado para recordar o etiquetar dónde estaba el maestro y simplemente trabajar en el maestro sin bifurcar, podría haber hecho git reset --soft old-master
y git commit
y no lo haría '' No necesito estos últimos pasos de limpieza.
git checkout master
git merge topic
git branch -d topic
También puedes usar git merge
con la opción --squash
.