Я просто по ошибке запустил 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
, потому что я могу получить commit aaaaaaa
из git reflog
. Тем не менее, я не смог получить commit bbbbbbb
потому что я не тянул до git push -f
.
Я пробовал git reflog
в удаленном репозитории, но нет ничего полезного в reflog в пустом репозитории.
Как я могу восстановить ветку foo
обратно, чтобы зафиксировать bbbbbbb
в удаленном репозитории?
(PS Я не знаю фактическое значение bbbbbbb
.)