Git: no se puede empujar, no se puede tirar después de cometer

Estaba en el path para comprometerme e impulsar cambios. Los cambios fueron cometidos con éxito. Entonces, estaba tratando de presionar y falló.

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin mpgf:mpgf Pushing to https://github.com/XXXXXXXXX To https://github.com/XXXXXXXXX ! [rejected] mpgf -> mpgf (non-fast-forward) error: failed to push some refs to 'https://github.com/XXXXXXXXX' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Merge the remote changes (eg 'git pull') hint: before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

Luego, traté de tirar (ahora veo que hubo algunos cambios) y falló:

 git -c diff.mnemonicprefix=false -c core.quotepath=false fetch origin git -c diff.mnemonicprefix=false -c core.quotepath=false pull --no-commit origin mpgf You have not concluded your merge (MERGE_HEAD exists). Please, commit your changes before you can merge. Completed with errors, see above. 

¿Cuál fue la razón por la que sucedió y cuáles son mis pasos para impulsar mis cambios con cuidado?

PD Ahora veo que hay varios cambios que tengo que hacer y hay un cambio que tengo que presionar.

Puede abrir una nueva twig que rastreará la twig remota que desea extraer (con "git branch –track"). Luego, extraiga los cambios del control remoto. Luego, finalice la compra en su twig original y combine la nueva twig en ella. Ahora sus sucursales remotas y locales son iguales y usted puede presionar.