git误删本地分支怎么办?


事件还原

在使用Sourcetree添加分支的时候,本来想要添加远程分支的,结果加成了本地分支,并进行了提交。
这个时候才发现添加错了,所以就随手将这个新的本地分支给删了。
结果在看原来的本地分支的代码时,发现并没有提交导致一同被删了。


解决方法

方法一 编辑器找回

如果你在写代码的时候,没有写完就将代码页面关掉的习惯,那么恭喜你不需要那么麻烦了。
大多数编辑器在代码被删掉了但是之前的页面没有关闭的情况下,仍然会给你保留下来你之前的代码,只是此时你的页面右上角会显示已删除而已。
这个时候你需要新建几个文件,赶紧将你的代码复制下来就可以了。
只不过要注意的是,你新建的文件一定不要跟原代码文件同名字、同地址,否则新建的文件会把编辑器辛辛苦苦保留下来的文件给覆盖掉。
这是来自血与泪的教训,否则我也不会去想办法找方法二了。

方法二 使用命令行找回

这个方法比较麻烦,跟着步骤操作就好了。
第一步,打开git命令行
git误删本地分支怎么办?
第二步,输入git branch -a

git branch -a

这里就会展示出你所有的分支,当然,分支被删了就看不到了。
第三步,输入git log -g

git log -g 

此时你就能看到你所有的提交记录,这里是比较繁琐的一步,如果你还记得当时提交时写的描述的话,就会好找一些。
找到你的提交记录后,你需要将这串数字记录下来,这串数字就是你的提交id
git误删本地分支怎么办?
第四步,输入git branch 你的分支名 你的提交id

git branch 分支名 提交id

第五步,打开你的sourcetree,你就能看见你的被误删除的分支了,双击就可以跳转进去了
git误删本地分支怎么办?
或者你也可以继续在命令行输入git checkout 分支名,也可以跳转到这个被删除的分支。

git checkout 分支名

现在你再看一次分支列表git branch -a,你就会发现被删除的分支回来了。

### 如何在 Git恢复删除本地和远程分支 #### 恢复本地分支本地分支误删时,可以通过 `git reflog` 命令来查找并恢复分支。此命令会显示所有操作的历史记录,即使这些操作不在当前分支上[^3]。 一旦找到了想要恢复分支对应的最近一次提交 (commit),就可以通过以下方式重新创建这个分支: ```bash git checkout -b recovered_branch_name commit_hash ``` 这里 `recovered_branch_name` 是新命名的分支名称,而 `commit_hash` 则是从 `reflog` 输出中找到的那个特定提交的哈希值。 #### 恢复远程分支 对于已经被删除的远程分支,在大多数情况下,只要还有任何一位开发者拥有未同步至服务器上的那份副本,则可以从他们的仓库拉取回那个分支的数据。假设没有其他人保存有这份数据的话,那么就只能尝试联系托管服务提供商寻求帮助了;不过这通常不是一种可行的选择。 如果只是简单地想重建一个同名的新远程分支(而不是真正意义上的“恢复”),可以在本地先建立好相应的分支之后再推送到远端: ```bash git push origin local_branch_name:remote_branch_name ``` 其中 `local_branch_name` 表示现有的本地分支的名字,而 `remote_branch_name` 就是要推送上去作为新的远程分支的名字。 值得注意的是,在执行上述任一过程之前应当仔细确认确实有必要这样做,并且最好事先通知团队中的其他成员以免引起不必要的混乱[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值