Я предполагаю, что, сбрасывая ветку, вы имели в виду что-то вроде этого, в то время как на ветке master
:
git reset --hard some_ref_below_master
В этом случае пуш не удастся, потому что пуш на определенной веткепо умолчанию требует, чтобы слияние (удаленной ветви с вашей локальной веткой) было ускоренным, то есть ссылка удаленного пользователя является непосредственным родителем вашей локальной ссылки.
Итак, у вас нетдругой выбор, кроме принудительного нажатия - либо с помощью git push --force
, либо с git push +localref:remoteref
(локальная спецификация ссылки может быть опущена, если удаленная ссылка имеет то же имя).
Например:
git push remote +master # force local and remote master on the same commit
git push +foo:bar # force remote's bar ref to point to the same commit as local's foo