之前一直对git的merge与rebase很困惑,而且一般也只使用merge而不是使用rebase。今天受高人指点理清了两者的区别。
首先对于两者而言,他们的结果是一样的,差异在于合并的方式(产生的结果就在于log中看起来会让人感觉到有问题,也就是两者的commit记录会有很大差异)
merge的合并方式:
使用rebase的话:
补充点:
pull/fetch的区别:
fetch只是单纯的拉取代码。
pull的实际操作:fetch-merge。所以当远程代码有更新时,本地pull后会可能需要处理冲突。