我只是删除了错误的分支,我需要用git branch -D branchName进行一些实验更改。
如何恢复分支?
我只是删除了错误的分支,我需要用git branch -D branchName进行一些实验更改。
如何恢复分支?
当前回答
遵循以下步骤:
1:输入:
git reflog show
这将显示所有的提交历史,你需要选择你想要返回的最后一次提交的sha-1
2:使用您选择的Sha-1 ID创建一个分支名称,例如:8c87714
git branch your-branch-name 8c87714
其他回答
你可以使用git reflog找到分支最后一次提交的SHA1。从这一点开始,您可以使用
git branch branchName <sha1>
编辑:正如@seagullJS所说,分支-D命令告诉你sha1,所以如果你还没有关闭终端,它变得非常容易。例如,它删除并立即恢复一个名为master2的分支:
user@MY-PC /C/MyRepo (master)
$ git branch -D master2
Deleted branch master2 (was 130d7ba). <-- This is the SHA1 we need to restore it!
user@MY-PC /C/MyRepo (master)
$ git branch master2 130d7ba
如果你还没有推送删除,你可以简单地做:
$ git checkout deletedBranchName
如果你刚刚删除了分支,你会在终端中看到如下内容:
Deleted branch branch_name(was e562d13)
其中e562d13是一个唯一的ID(也就是“SHA”或“散列”),使用这个可以恢复已删除的分支。
要恢复分支,使用:
git checkout -b <branch_name> <sha>
例如:
git checkout -b branch_name e562d13
谢谢,这很有效。
Git分支new_branch_name sha1 Git checkout new_branch_name
//可以看到我的旧的检入文件在我的旧分支
遵循以下步骤:
1:输入:
git reflog show
这将显示所有的提交历史,你需要选择你想要返回的最后一次提交的sha-1
2:使用您选择的Sha-1 ID创建一个分支名称,例如:8c87714
git branch your-branch-name 8c87714