本地拉取:
1,当远端有更新,本地库没有有变化,拉取操作远端会覆盖本地库(远端版本高于本地)
2,当远端修改,本地库也有修改,拉取操作会产生冲突文件(远端版本和本地版本冲突)
3,当本地库修改,而远端没有变化,拉取不会产生变化(本地版本高于远端版本)
4,当本地库版本低于远端版本,则无法推送,必须先拉取在操作,否则报错
分支合并:
当资源分支版本高于目标分支时,合并,资源分支同名文件会覆盖目标分支;
当目标分支版本高于资源分支时,合并,提示Already up-to-date.(已经更新),目标分支内容不会变化;
1,当远端有更新,本地库没有有变化,拉取操作远端会覆盖本地库(远端版本高于本地)
2,当远端修改,本地库也有修改,拉取操作会产生冲突文件(远端版本和本地版本冲突)
3,当本地库修改,而远端没有变化,拉取不会产生变化(本地版本高于远端版本)
4,当本地库版本低于远端版本,则无法推送,必须先拉取在操作,否则报错
分支合并:
当资源分支版本高于目标分支时,合并,资源分支同名文件会覆盖目标分支;
当目标分支版本高于资源分支时,合并,提示Already up-to-date.(已经更新),目标分支内容不会变化;
当目标分支和资源分支同名文件都有改动时,会报冲突,需手动解决; --
避免合并冲突方案:
如果目标分支(例如master)被保护起来,其他分支只能通过发起mergeRequest合并请求来合并的话,目标分支的版本始终是低于资源支的,也就不会产生冲突文件了,这样既达到了保护重要分支的目的,也解决了合并冲突的问题。
以上纯属个人经验总结,如有错误欢迎指正!