gitlab merge错分支了怎么快速回退到上一个版本

时间:2024-10-14 07:41:50

前因 gitlab 把a分支 pull了b分支 然后合并进了b分支。 发现不对想要回退
b 分支是一个受保护分支,并且没有权限直接强制推送到远程仓库,那么可以通过 GitLab 网页界面上的操作来回退到合并之前的状态。以下是步骤:

  1. 创建一个新的修复分支
    首先,你需要在 GitLab 页面上创建一个新的分支来进行修复操作。可以从 b 分支分出一个新的分支,比如 b-fix

  2. 在修复分支上回退提交
    在新的修复分支 b-fix 上进行提交回退操作。

    1. 进入 b-fix 分支。
    2. 找到错误的合并提交的历史,并回退到合并前的状态。可以通过网页上的提交历史查看并找到合适的提交哈希值。
    3. 新建一个“回退提交”的 MR(合并请求)。
  3. 创建新的合并请求
    b-fix 分支合并回 b 分支。

    1. 进入 Merge Requests 页面,创建一个新的 Merge Request。
    2. 源分支选择 b-fix,目标分支选择 b
    3. 在描述中注明这是一次修复操作,将 b 分支回退到合并前的状态。
    4. 创建并提交 Merge Request。
  4. 合并回退操作
    一旦 Merge Request 被批准并合并,b 分支将回滚到合并之前的状态。

具体例子操作:

  1. 创建修复分支
    进入 GitLab 仓库页面,点击“Repository” -> “Branches” -> “New Branch”。

    • 分支名称:b-fix
    • 源分支选择:b
  2. 在修复分支上回退提交
    进入新建的 b-fix 分支,点击“Commits”,找到出错的合并提交之前的提交哈希值。
    假设你找到了合并前的提交哈希值 previous_commit_hash。在 b-fix 分支上,点击“Revert Commit”按钮,输入必要的信息,提交回退。

  3. 创建合并请求
    进入“Merge Requests”页面,点击“New Merge Request”。

    • 源分支:b-fix
    • 目标分支:b
    • 描述:说明这是一次回滚操作,将 b 分支回滚到 previous_commit_hash 状态。
  4. 批准并合并
    通知相关人员,批准并合并这个 Merge Request。

通过以上步骤,你可以在 GitLab 页面上完成回退操作,而不需要直接操作受保护分支。