这里介绍一下如何覆盖分支,有时一个分支上开发了很多东西,但是和另一个分支区别很大,不想合并,直接用用当前分支的内容,这时就需要覆盖
工具/原料
1
git version 2.21.0 (Apple Git-122)
2
macOS Catalina 10.15.3 (19D76)
3
IDEA 2019.1.3
方法/步骤
1
首先切换到要被覆盖的分支,这里通过idea设置,后面会有命令行的介绍,点击切换成功后就可以操作下一步了
2
然后找到你需要覆盖的分支,可以通过上面的筛选,这里选分支的头,因为是分支覆盖,其实也可以用某次的提交进行覆盖
3
点击之后会有四个选项,这里选择hard,这里是指源码也会回退到某个版本,commit和index 都回回退到某个版本
4
最后push一下就可以了,到此分支覆盖就完成了,后面介绍下命令操作模式,命令操作很简单
5
就两个命令,第一个git reset --hard origin/test,test是指覆盖的分支,这一步之前也要先切换到被覆盖的分支上
6
然后推送push就行了,执行git push -f,这里f是指忽略一些提示,强制覆盖,一般不用个可以,到此分支内容就完全覆盖另一个分支了
注意事项
1
注意搞清楚那个分支覆盖那个分支
2
覆盖其实原理就是回滚