Git 使用学习笔记
  • 本书介绍
  • Git基础
    • Git追踪文件的生命周期
    • 文件状态
    • 修改类型
    • 理解Git三个树
    • 理解git checkout与git reset区别
  • Git基本命令
    • 文件操作
      • git mv
      • git rm
      • git add
    • 查询
      • git status
      • git diff & git difftool
      • git log
    • 提交、撤销与拉取
      • git commit
      • git checkout
      • git reset
    • 远程库操作
      • git clone
      • git remote
      • git fetch
      • git push
    • 标签
      • git tag & git show
    • 分支操作与管理
      • git branch
      • git checkout
      • git merge
      • git rebase
    • 偏好设置
      • git config
  • Git高级命令
    • 储藏与清理
      • git stash
    • 提取
      • git cherry-pick
    • 常用场景实战
      • 修改commit提交
      • 修改远程仓库提交
  • .gitignore
    • 使用.gitignore文件
    • glob模式
  • GitLab操作
    • 什么是GitLab
    • 基于 Merge Request 的开发流程
    • 如何撤销 Merge Request?
Powered by GitBook
On this page
  • 撤销一个Merge Request
  • 如何重新提交

Was this helpful?

  1. GitLab操作

如何撤销 Merge Request?

Previous基于 Merge Request 的开发流程

Last updated 6 years ago

Was this helpful?

GitLab 组合了 Git的强大功能可以撤销任何的commit提交。当你需要撤销你之前merge request过的代码,以下就介绍在GitLab上是如何操作

撤销一个Merge Request

  1. 当一个 Merge Request 已经合并了,会出现一个名为 Revert 按钮,让你撤回当前的Merge Request。

  2. 按下按钮后,一个弹出会出现,GitLab会让你选择两种不同的方法,方法1:直接撤销该分支(不建议),方法2:新建一个新的merge request用来提交撤销操作(建议)。

  3. 如果上一步选择了新的merge request来执行撤销操作,只需要合并该merge request就完成操作。

    注意

  4. 一旦撤销成功,Revert 按钮就不可再点击

  5. 如果目标分支是保护分支(protected branch)直接在目标分支做撤销操作通常是不起作用

如何重新提交

  1. 由于被撤销合并的分支已经在目标分支合并过,所以继续在被撤销的分支上再有任何的修改,再次提交mr也不会被git侦测到有修改

  2. 解决方法需要把本地的目标分支更新到最新版本,然后拉一个新的分支用于重新提交代码的新分支(例如命名为:re-merge-branch),然后使用命令 git revert () (tree-ish提交索引哈希)让该分支回滚到合并目标分支的状态,然后在这分支上进行修改。

  3. 修改完成后再按照里所介绍的步骤重新提交一次mr即可。

基于 Merge Request 的开发流程
image