如何恢复已删除Git分支的30天提交历史?
找回已删除分支的30天提交历史
方法一:通过本地Git引用日志(reflog)恢复
Git会记录所有本地操作的引用日志,即使分支被删除,提交记录仍可能保留:
- 查看所有本地和远程的引用日志,定位丢失的提交哈希:
git reflog show --all - 利用你提供的旧提交哈希(如
361022ebfb34de02f3f8638001572457e14a2109),创建新分支指向该提交:git checkout -b recovered-history 361022ebfb34de02f3f8638001572457e14a2109 - 验证提交历史是否完整:
git log --oneline - 确认无误后,将恢复的分支推送到GitHub:
git push origin recovered-history
方法二:通过GitHub平台恢复已删除分支
GitHub默认保留已删除分支的提交记录90天,可直接在平台操作恢复:
- 打开目标仓库的GitHub页面,点击顶部的「Settings」
- 滚动到「Branches」选项(在「Code and automation」分类下)
- 找到「Deleted branches」区域,这里会列出近期删除的分支
- 找到你删除的
master分支,点击右侧的「Restore」按钮即可恢复
方法三:从其他克隆仓库拉取恢复
如果有其他本地克隆仓库或同事的仓库仍保留原分支:
- 在当前仓库中添加备份仓库为远程源:
git remote add backup <备份仓库的本地路径或远程URL> - 拉取备份仓库的原分支提交:
git pull backup master - 将恢复后的分支推送到GitHub:
git push origin master
内容的提问来源于stack exchange,提问作者Md Ashraf Uddin
相关产品推荐
相关产品推荐

