fetch与pull
- fetch = pull + merge
- fetch -p,用于将清理工作同步到本地repository
rebase-衍合
- merge与rebase是合并的两种方法(上为merge,下为rebase)
- 两者最后整合得到的结果没有任何区别,但rebase能产生一个更为整洁的提交历史
- rebase实际上是将解决冲突的任务转交给了功能分支提交者进行
- 一旦分支中的提交对象发布到公共仓库,就千万不要对该分支进行rebase操作,这会产生提交者、提交内容相同但SHA-1不同的两次提交!
- rebase -i 可以在rebase之前编辑提交历史(删除、合并、拆分等等)