Я просто побежал git push -f
по ошибке, переписав тем самым удаленную ветку.
Оригинал:
(remote origin:)
branch master -> commit aaaaaaa
branch foo -> commit bbbbbbb
(local)
branch master -> commit ccccccc
branch foo -> commit ddddddd
После git push -f
:
(remote origin:)
branch master -> commit ccccccc
branch foo -> commit ddddddd
В моем локальном хранилище, я работаю на master
ветви, так что я могу восстановить ветвь master
совершить aaaaaaa
, потому что я могу получить совершить aaaaaaa
с git reflog
. Тем не менее, я не мог получить коммит, bbbbbbb
потому что я не тянул раньше git push -f
.
Я пробовал git reflog
в удаленном хранилище, но нет ничего полезного в reflog в пустом хранилище.
Как я могу восстановить ветку foo
обратно для фиксации bbbbbbb
в удаленном хранилище?
(PS Я не знаю фактическую стоимость bbbbbbb
.)