我是靠谱客的博主 开朗过客,最近开发中收集的这篇文章主要介绍记一次回滚错误的合并,未提交,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

怎么操作呢?首先想到的是上面所说的 git revert <commit> ,但是貌似不太行。

git revert 384fdf1703ba2dacd59f7e30b8f1dabc715b018a 
error: Commit faulty merge is a merge but no -m option was given.
fatal: revert failed

这是因为试图撤销两个分支的合并的时候Git不知道要保留哪一个分支上的修改。所以我们需要告诉git我们保留那个分支m 或者mainline.

git revert -m 1 384fdf1703ba2dacd59f7e30b8f1dabc715b018a

-m后面带的参数值 可以是1或者2,对应着parent的顺序.上面列子:1代表v3,2代表d2
所以该操作会保留master分支的修改,而撤销dev分支合并过来的修改。

此处rev3是一个常规commit,其内容包含了之前在faulty merge撤销掉的dev合并过来的commit的【反操作】的合集。

到这个时候还没完,我们要记住,因为我们抛弃过之前dev合并过来的commit,下次dev再往master合并,之前抛弃过的其实是不包含在里面的。那怎么办呢?

恢复之前的回滚

很简单我们把之前master那个带有【反操作】的commit给撤销掉不就好了?

git checkout master
git merge dev


最后

以上就是开朗过客为你收集整理的记一次回滚错误的合并,未提交的全部内容,希望文章能够帮你解决记一次回滚错误的合并,未提交所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(1809)

评论列表共有 0 条评论

立即
投稿
返回
顶部