有release、test两个分支,test上进行批改提交后,merge到release分支,但merge后想撤销此次merge操作,那要怎么操作呢?
# 撤销merge操作release分支:git revert fcd8a101 -m 1
其中”fcd8a101“为想要撤销操作的commit id,-m 示意要撤销merge操作,不加-m示意撤销一般commit操作。
撤销 merge 操作后 test 分支无奈再次 merge 到release
起因:无奈再次 merge 是因为 revert 操作是新操作笼罩旧操作,所以之前的批改相当于被摈弃,此时 test 分支是落后 release 分支的。
若想要实现test能够merge到release分支,能够将release分支先合并到test分支:
# 合并release到testtest分支:git merge release
此时release分支的批改都被带到了test分支,包含在release分支的revert操作,所以当初test分支本来的代码此时没有了。
重点来了⚠️ 这时须要把revert产生的提交再revert一次,test上本来的代码又回来了,此时再进行批改或者merge到release分支都是能够操作的!