GitLab远程分支被删除后怎么恢复

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitLab远程分支被删除后怎么恢复相关的知识,希望对你有一定的参考价值。

参考技术A 在gitlab上店里activity找到某次提交的记录,或者在sourcetree上找到某一次记录

复制这次提交记录,然后打开终端,cd到项目目录下,执行命令

git checkout -b 分支的名字 上门复制的提交记录

例如

git checkout -b v220607  2b2e037fdefdcb0b7f4e5510a49d65a3f8f32eda

执行成功后,就能看到如下提示

然后再把拉下来的分支重新推送到远端就行了

IntelliJ Gitlab 在本地恢复到旧分支而不影响远程分支

【中文标题】IntelliJ Gitlab 在本地恢复到旧分支而不影响远程分支【英文标题】:IntelliJ Gitlab revert to older branch locally without affecting remote branches 【发布时间】:2022-01-14 17:42:07 【问题描述】:

我想使用 Git 菜单标题下的 IntelliJ windows Gitlab 菜单界面从远程存储库恢复到旧分支。我想在本地执行此操作而不影响远程分支。因此,当我这样做时,除非我签入某些内容,否则当前的远程分支应该完全保持原样。

我目前没有任何需要保存的本地工作。

如上所述,如何在不影响远程存储库的情况下获取旧版本?

【问题讨论】:

您对此有何疑问? 如何获取旧版本,如上所述而不影响远程存储库? 而当使用您描述的菜单界面时,这不起作用吗? 【参考方案1】:

您应该使用 git 或 VCS/git IntelliJ 功能来执行此操作。只需将您的 HEAD (git reset) 重置为所需的参考点。

使用 IntelliJ VCS 实用程序,执行以下操作:

    查看相关分支git checkout my-branch

    在git操作菜单中,选择Reset HEAD...

    在“Reset Head”对话框中,选择“Reset type”为“hard”并输入您想要恢复的参考。您可以使用几乎任何有效的引用(git reset 接受),如提交 SHA、相对引用(如 HEAD~10)。

    (可选)使用验证按钮验证更改,然后单击“重置”

这相当于git reset 操作:

REF="abc123"
git reset --hard "$REF"

Git 重置是本地操作,除非您推送本地更改,否则不会影响远程上的任何内容。

【讨论】:

以上是关于GitLab远程分支被删除后怎么恢复的主要内容,如果未能解决你的问题,请参考以下文章

git 删除分支如何恢复

怎么删除git远程仓库上某次commit

通过 Gitlab 找回远程本地都删除的Commit

git --- 删除本地分支和远程分支操作

git --- 删除本地分支和远程分支操作

git --- 删除本地分支和远程分支操作