情景设想:
(假设最开始最新的分支为master) a修改了分支,并进行了本地提交, b修改了分支,远程提交, 此时仓库的最新分支为b提交的b-master, 但是a没有更新项目,所以a读取的最新分支依旧是master, 此时a提交则有两个选择
1,merge(时间线清楚)
找到a和b的共同祖先
将a-master,b-master,合并到一个新的节点中,new-master
2,rebase(简洁)
按照修改的时间顺序,先后串联起来
建议:
编码前先更新
提交前先更新
提交前检查是否有编译错误
提交粒度尽可能小,描述尽可能准确
修改了公共文件,尽早通知其他成员更新
最重要的,团队分工要明确
参考链接: git merge 与 git rebase的区别 你真的懂git rebase吗? Git代码防丢指南(ideal的git使用)