хорошо, это будет громоздко, но ваши коммиты, вероятно, все еще будут там ...
run git fsck --full
(может занять некоторое время) - в нем будут перечислены все висячие капли / деревья / коммиты. проверять каждый опасный коммит с помощью git log
/ git show
/ gitk
. когда вы найдете главный коммит ветви, воссоздайте ветку с помощью git branch <branchname> <sha1 of commit>
(вы должны запомнить старые имена веток)
, так как вы восстановили свое старое состояние хранилища, используя машину времени, и теперь ваш старый хранилище находится на вашем рабочем столе, самое простое, что вам нужно сделать, это добавить новый пульт и затем извлечь удаленные коммиты:
git remote add old-repo /path/to/your/desktop/old-dir/.git
# sorry, no clue what the actual path might be on mac systems (~/Desktop/…?)
git fetch old-repo
после этого у вас будут все ветки из вашего старого репозитория, доступные как old-repo/branchname
. чтобы объединить их, просто введите команду git merge old-repo/branch
. это просто базовое git fu для установки хранилища в качестве дополнительного пульта и объединения его изменений (никакой магии здесь не происходит, двигайтесь вперед)