如何恢复Git卸载前创建的同名旧分支及其历史提交记录
Git旧分支恢复操作指南
情况1:旧分支的提交此前已推送到远程仓库
- 进入本地项目目录,执行
git fetch origin拉取远程仓库全部分支更新数据(如你的远程仓库别名不是默认的origin,替换为对应别名即可) - 执行
git branch -a查看本地+远程全部分支列表,找到对应remotes/origin/你的分支名的远程旧分支记录 - 若当前新建的同名分支存在需要保留的新内容,先执行
git stash暂存这些内容 - 执行
git checkout -b 你的分支名 origin/你的分支名,拉取远程旧分支覆盖本地空同名分支,完成后执行git log即可查看历史提交记录,如有暂存的新内容可执行git stash pop合并
情况2:旧分支的提交仅存储在本地,未推送过远程
卸载Git不会删除本地项目目录下存储提交记录的.git文件夹,只要旧的项目文件夹还保留即可恢复:
- 确认你当前操作的是一个月前提交代码的旧项目目录,若你新建了项目目录,先找到旧项目文件夹再进入操作
- 执行
git reflog查看本地所有Git操作历史,找到你旧分支最后一次提交对应的commit哈希值(格式为7位左右的字符串,如a1b2c3d) - 执行
git checkout -b 你的分支名 对应commit哈希值,通过历史提交重建旧分支,完成后即可看到所有历史提交记录
注意:如果你已经彻底删除了旧项目文件夹,且旧分支提交从未推送至任何远程仓库,提交记录已物理删除,无法恢复。
内容的提问来源于stack exchange,提问作者Adas Hoper
相关产品推荐
相关产品推荐

