我已经使用此命令git reset --hard HEAD^
回滚到之前的一些提交,我想要做的就是前滚我知道这不是我最近做的提交的正确术语。发生了什么事情是当我使用该命令时删除了一堆文件,现在我不知道如何回来。我正在使用github有没有办法从github下拉并覆盖当前目录?
答案 0 :(得分:3)
查看您的问题,您要检索的提交是GitHub仓库的master
分支上的当前提交,您必须执行以下操作
git reset --hard origin/master
警告这将删除您在HEAD^
上回滚后可能进行的所有未提交的修改。
之前,您可能想要
git fetch origin
确保您从GitHub回购中获得最新更改。
答案 1 :(得分:1)
看看git reflog
。在其输出中,您应该找到要重置的提交。然后git reset --hard
到它,然后你回到第一个reset
之前的位置。
git reflog
特别有用,如果您真的搞砸了本地存储库并且没有可用于提取提交的远程存储库。只要你没有调用git prune
来删除旧的提交或git reflog expire
来清理reflog,它应该可以正常工作。