# 还原[](#还原 "Permalink") 您可以使用 Git 的强大功能,通过在合并请求和提交详细信息中单击" **还原"**按钮来[还原任何提交](https://git-scm.com/docs/git-revert "Git 恢复文档") . ## Reverting a merge request[](#reverting-a-merge-request "Permalink") **注意:** " **还原"**按钮仅可用于自 GitLab 8.5 起创建的合并请求. 但是,您仍然可以通过从"提交"页面列表中还原合并提交来还原合并请求.**注意:**仅对使用合并方法"合并提交"的项目显示" **还原"**按钮,该方法可以在项目的**"设置">"常规">"合并请求"**下**设置** . 无法通过 MR 视图还原[快进提交](fast_forward_merge.html) . 合并请求合并后,将有一个**还原**按钮可用于还原该合并请求引入的更改. [![Revert Merge Request](img/fe7d77556848be98a93c7b6516b0e6f8.png)](img/cherry_pick_changes_mr.png) 单击该按钮后,将出现一个模式,您可以在其中选择将更改直接还原到所选分支中,也可以选择使用还原更改创建新的合并请求. 合并请求恢复后," **恢复"**按钮将不再可用. ## Reverting a commit[](#reverting-a-commit "Permalink") 您可以从提交详细信息页面还原提交: [![Revert commit](img/b4e821b8b83e29e837f01f4620e557b7.png)](img/cherry_pick_changes_commit.png) 与还原合并请求类似,您可以选择将更改直接还原到目标分支中,也可以选择创建新的合并请求以还原更改. 恢复提交后," **恢复"**按钮将不再可用. 请注意,还原合并提交时,主线将始终是第一父级. 如果要使用其他主线,则需要从命令行执行. 这是一个使用第二个父级作为主线还原合并提交的快速示例: ``` git revert -m 2 7a39eb0 ```