有些人不喜欢 merge,因为在 merge 之后,commit 历史就会出现分叉,这种分叉再汇合的结构会让有些人觉得混乱而难以管理。如果你不希望 commit 历史出现分叉,可以用 rebase 来代替 merge。
不希望commit历史出现分叉,用rebase来代替merge
rebase ,又是一个中国人看不懂的词。这个词的意思,你如果查一下的话:
哈?玩个 Git 就弯了?
其实这个翻译还是比较准确的。rebase 的意思是,给你的 commit 序列重新设置基础点(也就是父 commit)。展开来说就是,把你指定的 commit 以及它所在的 commit 串,以指定的目标 commit 为基础,依次重新提交一次。例如下面这个 merge:
rebase:给你的commit序列重新设置基础点(父commit)
git merge branch1