我误删了 git 分支,如何恢复?

0 git gitlab

我将我的分支推送到gitlab,然后删除了我的本地分支,但有人错误地删除了远程分支,有什么方法可以恢复我的分支

spi*_* 王建 7

    \n
  1. 如果你刚刚删除了分支,你会在你的目录中看到类似这样的内容
  2. \n
\n
Deleted branch <your-branch> (was <sha>)\n
Run Code Online (Sandbox Code Playgroud)\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0要恢复分支,请使用:

\n
\ngit checkout -b <branch> <sha>\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  1. 如果您不知道头脑中的“sha”,您可以:
  2. \n
\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0使用以下命令在已删除分支的顶端查找提交的“sha”:

\n
git reflog\n
Run Code Online (Sandbox Code Playgroud)\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0要恢复分支,请使用:

\n
git checkout -b <branch> <sha>\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  1. 如果您的提交不在您的引用日志中:
  2. \n
\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0您可以尝试通过将分支重置为使用以下命令找到的提交的 sha 来恢复分支:

\n
git fsck --full --no-reflogs --unreachable --lost-found | grep commit | cut -d\\  -f3 | xargs -n 1 git log -n 1 --pretty=oneline > .git/lost-found.txt\n
Run Code Online (Sandbox Code Playgroud)\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 然后您可以使用以下之一显示每个提交:

\n
git log -p <commit>\ngit cat-file -p <commit>\n
Run Code Online (Sandbox Code Playgroud)\n