当前位置:   article > 正文

idea可视化使用git rebase合并分支步骤,确保主分支树不会出现杂乱分叉_idea rebase

idea rebase

一、为什么用rebase?

1、开发需求时,需要自己创建一个个人开发分支写需求。。假设是从dev或者master分支拉的新分支(dev-zld)

当自己的需求写完了,一般我会把这个新需求的在dev-zld上多个提交记录先合并为一条commit记录

(当然,主要看公司规范,之前的公司是要求一个需求只能有一条提交记录,怎么做的请看:https://blog.csdn.net/qq_36951116/article/details/107923312

2、当在自己的个人分支dev-zld开发期间,可能你的同事把他的分支代码合并到dev上了,也就是说,你的dev-zld上的代码很可能不是最新的。。

在以前,我们直接把dev-zld分支merge到dev上,这也可以,但这会让git提交记录很杂乱,也就是会有无用的merge信息以及分支树分叉,比如“Merge remote-tracking branch 'origin/master'”(不得不说,我还是喜欢用merge的,用起来简单方便)。

现在呢,为了保持提交记录的洁净以及git分支树不会分叉,就需要用rebase来做了。

 

二、这里主要用idea 的git可视化提交演示步骤

1、把dev-zld的多条提交记录合并为一条,如果公司不要求就忽略(可以参考:https://blog.csdn.net/qq_36951116/article/details/107923312

2、把dev上的最新代码通过rebase合并到当前分支dev-zld


这个时候我的个人分支dev-zld就已经把dev上的最新代码给合并过来了,分支树还不会乱(然后push到远程仓库,这push也可以不做,无所谓)

当然,如果代码冲突了,那还是需要解决冲突的。这里把dev先合并到dev-zld就是为了在你自己当前分支解决冲突。

3、再切换到dev分支

4、重复第二步,只不过这个时候是把dev-zld的代码通过rebase合并到dev上(因为第2步的时候再dev-zld解决了冲突,这个时候基本上不会再冲突了,除非在这期间刚好你的同事又提交代码了)

5、然后再看提交记录树,是一条线的,并且没有merge信息

6、把本地dev push到远程仓库的dev上即可

7、上述前提是代码不会出现冲突,否则还是会出现merge信息的。。。。当然,这个也有解决办法,就是重新reset到某个提交版本,然后把这个commit版本之后的所有提交信息合并为一条commit记录(还是上面的那篇文章:https://blog.csdn.net/qq_36951116/article/details/107923312)。。。我之前的公司是通过项目管理手段避免代码冲突的,也就是你负责的需求和别人的需求是尽可能不会凑到一块。

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/821249
推荐阅读
相关标签
  

闽ICP备14008679号