Skip to content

Sobre los Merge automáticos #21

@jonalvarezz

Description

@jonalvarezz

El hecho que sucedan estos tipos de commits Merge branch 'master' into .. no indica necesariamente algo malo, pero sí que no aporta nada, y daña el historial de commits. Es un commit extra que no sirve para nada.

Origen

Sucede cuando se hacen cambios en el repositorio local y posteriormente se hace un pull del upstream que trae nuevos commits anteriores a los locales.

Así, cuando se realiza un git pull automáticamente se realiza también un git merge origin/master master y al hacer git push se sincronizarán tanto los nuevos commits como el merge necesario para que el repositorio local pudiera coger los nuevos commits.

Como evitarlo

Se puede evitar de varias formas:

  1. Realizar git pully estar preparados para hacer un reset
    Si el resultado del git pull implica un nuevo merge, utilizar git reset --hard HEAD^ para deshacerlo.
  2. No utilizar git pull por defecto.
    En cambio utilizar git pull --ff-only de esta forma los únicos merges que se harán serán los tipo fast-forward y los recursivos, si los hay, se deberán solucionar manualmente.

Análogamente, utilizar git merge --ff-only para hacer merge entre branchs.

Más información

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions