Git: Rebase o Merge para actualizar una sucursal local

De acuerdo, tengo una twig de desarrollo que se rastrea de forma remota y que todos comparten en este proyecto.

Localmente me he separado de esto para hacer un trabajo continuo. Sin embargo, mientras tanto, otro desarrollador se ha comprometido y ha introducido cambios en la twig de desarrollo que me gustaría reflejar en mi sucursal local. ¿Es este el momento de rebase?

No quiero simplemente comprometer mi twig local con el desarrollo y luego comenzar una nueva twig porque me gustaría mantener mi historial de compromisos.

Según tengo entendido, rebase tomaría la twig de desarrollo en HEAD y volvería a aplicar todas mis confirmaciones por encima, pero ¿sobrescribirá los cambios del otro desarrollador sin generar un conflicto si hemos realizado cambios en las mismas líneas?

Primero, buscas, luego rebasas. Usted no golpea los cambios del otro tipo haciendo esto; lo que debes hacer es rehacer tu set de cambios para que sea un delta contra sus cambios en lugar de la versión anterior. Elimina los posts de fusión innecesarios e inútiles de los loggings y hace que el logging sea más significativo si así es como debe representarse el historial de desarrollo.

Adelante y rebase; suena como lo correcto para hacer en este caso. demasiada gente simplemente se tira sin pensar.

Sí, tiene razón en que la rebase tomará el encabezado de la twig de desarrollo y volverá a aplicar todas sus confirmaciones en ella.

No, no sobrescribirá los cambios de otros desarrolladores sin generar un conflicto. Si hay un cambio conflictivo, deberá resolver los conflictos, al igual que en una combinación (corrija los conflictos, y use git add para organizar la corrección), y luego diga a rebase que continúe usando git rebase --continue .

Sí, este es un momento apropiado para hacer una rebase. Así es como muchas personas trabajan; si tienen compromisos locales imprevistos, y hay confirmaciones previas, vuelven a calcular sus compromisos locales antes de seguir trabajando o presionar a un repository público.