天天都在使用git,听说过变基这个名词,但是并没有实操过变基,正好今天有个同事说起一件事情:提交代码的时候有太多的自动合并,如果需要回退版本,操作起来很困难,理想状态下,应该就只有一条线,见下图,以前写了代码提交后,git会自动合并,导致有很多的分叉线,2023/5/4 13:30以前的部分,理想状态应该像2023/5/4 13:30以后的部分,不管多少人提交多少分支,左侧应该只有一条线。
这篇文章是交大家怎么使用vs的可视化界面操作,不涉及git命令。
至于变基的基本概念这里就不说了,请看这篇文章:两条命令让你的git轻松自动变基,学到了! - 码农教程
现在假设dev分支为基本分支,test1、test2是在dev延伸出来的两个分支,test1、test2代码改完后,要合并到dev分支。
如上图,dev版本上最新的是test1提交的代码,现在如果test2修改了代码,并合并到dev,必定会产生合并代码,并切左侧多出来一条线,这个时候就需要使用变基。以下介绍具体步骤。
第一步
切换到test2分支,把dev的代码合并到当前分支,并推送,使当前代码为最新代码;(怎么把dev合并到当前分支:如下如,右键dev分支,点击“合并到Current Branch”,弹出“确定要将dev合并到test2?”,点是即可,然后点推送)
现在test2已经是最新代码
第二步
修改test2分支上的代码, 全部提交,但是不推送(相当于保存到本地)
切记不要推送到远端,下图说明,代码还在本地。
第三步
保持在当前分支下test2,将当前分支变基到dev;
具体操作步骤:点击分支下拉框,右键dev,点击“将Current Branch的基准重定到”,见下图
确定要将test2变基到dev? 选择是
第四步
推送当前分支到远程
第五步
切换到dev分支,把test2合并到dev分支,推送,至此,变基合并完成
最终结果如下图