Примечание: hg pull
== git fetch
(и не git pull
, что было бы сопоставимо с hg pull -u
).
Сообщение об ошибке, которое вы видите о вашей отставание ветви, скорее всего, вызвано чем-то, что известно как non-fast-forward merge / pu sh. Когда вы перебазируете, вы измените существующую историю. Если вы уже выдвинули свою старую версию истории, то она отличается от вашей локальной версии и, таким образом, git говорит вам, что она не может сделать вашу ветку sh, потому что это изменит историю. У вас есть два варианта: 1. объединить (не то, что вы хотите в этом случае) 2. принудительно pu sh
Также прочитайте Git pu sh отклонено "без ускоренной перемотки вперед ", которая предоставляет решение именно для этой проблемы.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: никогда не заставляйте историю sh принудительно использовать общие ветви, если вы действительно не знаете, что делаете. Принуждение разрушает существующую историю, и если старая история уже использовалась кем-то другим, вас ждут неприятные сюрпризы в будущем.
При этом решение в основном сводится к:
git fetch
git rebase origin/master
git push origin +your_branch:your_branch