Sincronizar manualmente la bifurcación cuando falla Bitbucket

Sé cómo sincronizar la twig con el maestro. Hago esto así:

git checkout target-branch git merge master # resolve conflicts if any and commit git push 

Estoy intentando descubrir qué es lo que me sugiere BitBucket cuando falla la synchronization automática debido a conflictos. BitBucket me sugiere:

 git checkout 326907c583f7 # Note: This will create a detached head! git merge remotes/origin/master 

¿De qué sirve crear una cabeza separada? No tiene sentido para mí. ¿Es un error en el lado de Bitbucket o me falta algo?

Bueno, por mi parte, creo que el post sobre "crear un HEAD separado" es un poco engañoso porque en realidad no se puede crear . Lo que sucede es que git puede verificar twigs o revisiones (olvidemos las tags para no complicar más las cosas). Si elige pagar una sucursal local , entonces git sabe que cuando se compromete tiene que crear la nueva revisión y luego hacer que la sucursal local apunte a esta revisión que acaba de crearse. Pero si opta por pagar una "revisión" por su ID en su lugar como se proporciona en el ejemplo que publicó (o una sucursal remota, para el caso, es la misma situación desde el punto de vista de su repository local), entonces no hay twig local que está apuntando a la revisión (es por eso que se llama HEAD separada ). Para git no hace diferencia. Es solo una revisión que solicitó que se completara la compra solicitando una sucursal local, una sucursal remota o una revisión. Pero para ti hace una gran diferencia, porque si trabajas en un HEAD separado , entonces, si eliges comprometerte, git no tendrá una twig local apuntando hacia él. Simplemente creará la revisión, hará que HEAD apunte a ella y eso es todo. Si en este momento, por ejemplo, se desprotegió en una twig o revisión diferente y no tenía una twig local que apuntara a la revisión que acaba de crear en un estado HEAD desconectado, entonces perdió la revisión (bueno … siempre puede usar git reflog para recuperarlo, pero entiendes, ¿no?). Es por eso que Git te advierte cuando empiezas a trabajar en un HEAD separado :

 $ git checkout HEAD~2 Note: checking out 'HEAD~2'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b <new-branch-name> 

Observe cómo le dice que puede crear una sucursal local en cualquier punto ejecutando git checkout -b new-branch-name