No comprendo del todo la diferencia entre git mersh y git rebase. De acuerdo a lo entendí el primero lo tengo que ejecutar para unir la rama en la que estoy trabajando con aquella que es la principal, mientras que git rebase es el comando que permite traer los commits de la rama en la que estoy trabajando y colocarlos como antecedente de la rama principal pero no entiendo bien la utilidad de este ultimo comando y si el mismo constituye una alternativa a merge o si por el contrario se complementan.