ProGit摘要4-衍合
之前我们讨论了合并(merge),它会进行一次三头合并.
衍合
其实,我们还可以把C3里产生的补丁在C4中再打一遍,这种操作就叫衍合
|
|
或
|
|
确认后,你就可以将之快速合并了
那么你会问,有区别吗?衍合时也是需要你手动个性补丁的.但是比较两都的提交图,我们可以看到,衍合可以提供一个更为整洁的提交历史(线性).这也是使用衍合的目的,如果你不是维护者,那么最好用衍合.
onto
其实,我们还可以将衍合放到其它分支我们想着把c8和c9的补丁用于master,而跳过server支(c3,c4.c10)
|
|
那么后面如何衍合server呢?
特别注意
什么时候不能用衍合?
一旦分支中的提交对象发布到远程仓库,就千万不要对该分支进行衍合操作。
某人合并分支后并推送到远程仓库,此时我已经进行修改(c2,c3),然后我同步成c7
此时某人决定不用合并而采用衍合(c4')并推送,而我又需要同步.此时我就打了两次c4补丁!!!
- 原文作者:mlyixi
- 原文链接:https://mlyixi.github.io/post/cs/ProGit%E6%91%98%E8%A6%814-%E8%A1%8D%E5%90%88/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。