我找到了恢复远程here中旧提交的说明。
以下是步骤:
1。)找到最后一次提交的id(SHA哈希),这是你想成为HEAD的提交
2。)在使用以下命令提交的本地repo fetch中 git fetch origin:refs / remotes / origin /
3。)如果您有未被推送的本地提交,请创建一个本地分支以保留它们: git branch -b
4.)返回原始分支 git checkout
5.。)将分支重置为步骤1中找到的良好提交: git reset --hard
6.。)将您的重置仓库推送到远程(需要强制更新): git push -f origin
7。)合并你在第3步中隐藏在分支中的提交: git merge
我的问题是,如果我想跳过第3步,我还应该跳过第4步和第7步吧?然后我将失去我在本地提交的本地更改。对?
由于
答案 0 :(得分:2)
正确,如果您没有任何保存工作,那么您不需要在步骤3中创建单独的分支。
这将使第4步不相关,因为您已经在原始分支上。
步骤7也不相关,因为没有未完成的提交要合并。
另外值得注意的是,如果你确实有一些未完成的提交,你不会通过跳过第3步来“丢失”它们。如果由于某种原因你确实需要让它们恢复,你可以从Git的{{{ 3}}