Solo quiero comprender mejor el mensaje de advertencia después de eliminar una sucursal local
advertencia: eliminar la rama
'old_branch'que se ha fusionado'refs/remotes/origin/old_branch', pero que aún no se ha fusionadoHEAD.
Solo quiero comprender mejor el mensaje de advertencia después de eliminar una sucursal local
advertencia: eliminar la rama
'old_branch'que se ha fusionado'refs/remotes/origin/old_branch', pero que aún no se ha fusionadoHEAD.
Respuestas:
Esto solo le advierte que tiene cambios insertados en la rama origin, pero no están fusionados master, por lo que solo los está eliminando localmente.
Le advierte que ya no tiene una copia local de esa rama, pero existe en origin
Si también desea eliminar la rama remota, use git push --delete origin old_branch
masterno está involucrado en esto. Te refieres a la rama actual, más bien. ;)
git branch -d branch_nameque se supone que solo debe eliminar la rama localmente. ¿Por qué es necesaria la advertencia en este caso?
Suponiendo que actualmente ha realizado el mastercheck out, significa que los cambios realizados old_branchno están presentes en master. Sin embargo, ellos están presentes en old_branchel origin.
HEAD", HEADaquí se hace referencia al HEAD de la rama principal local.
masterverificado localmente, aún puede ocurrir si el SHA de cualquiera de las confirmaciones ha cambiado; es decir, se basó origin/old_branchen origin/master. Incluso si fuera un avance rápido, esto generará un nuevo SHA para cada nueva confirmación de origin/old_branch, lo que hará que git vea los SHA originales en su local old_branchcomo no fusionados después de extraer los cambios a su masterrama local . Puede ver esta respuesta y esta respuesta de por qué ocurre esto.
Esto significa que su sucursal local old_branchestá actualizada con la sucursal remota old_branchen remota, originpero no está fusionada con la sucursal masterque se considera la sucursal principal en el repositorio.
Es solo una precaución de git. Te da una pista: ¿tal vez hiciste tu trabajo en la rama de tema y te olvidaste de fusionarla con la rama principal?
actualizar
Git te advierte que no pierdas tus cambios. Por ejemplo, si no tiene su old_branchgit maestro, no le permita ni siquiera eliminar la rama que no está fusionada con el maestro (bueno, lo permite, pero con la clave -Dque es la force-deleteopción).
master, pero el actual HEAD.
Para agregar a las otras respuestas, esto también puede significar que el cambio podría fusionarse con el maestro, solo que su copia local del maestro aún no lo refleja. De cualquier manera, esto solo le informa que la copia local de su maestro no tiene los cambios que presionó en el origen. Fusionado / No fusionado ... tal vez, tal vez no