Git新手求助:如何将master分支回退到指定历史提交?
解决Git远程分支回退到指定历史提交的问题
操作步骤
- 获取目标提交哈希:在GitHub网页端仓库的「提交」页面,找到你要回退到的红色标记提交,复制它的完整哈希值(形如
ed25519的长字符串) - 同步远程提交记录(如果重新克隆后本地无历史记录):
git fetch origin - 本地硬重置到目标提交:
将git reset --hard RED_COMMIT_HASHRED_COMMIT_HASH替换为你复制的实际哈希值 - 强制覆盖远程分支:
git push --force-with-lease origin master
之前操作无效的原因
- 执行
git reset --hard ed25519后未推送,本地分支回退但远程分支未更新,所以仓库无变化 git revert e0a20bf仅能撤销单个提交的修改,无法解决更早的强制推送导致的代码覆盖问题- 重新克隆后
git log无输出,是因为远程master分支当前指向的提交无历史记录,需从GitHub网页找回目标提交的哈希值
内容的提问来源于stack exchange,提问作者shenaniganss
相关产品推荐
相关产品推荐

