准备工具
- Git-2.31.1-64-bit.exe (git)
- SourceTreeSetup-3.4.3.exe (git客户端版本管理工具)
- gitlab服务器
- TortoiseGit-2.12.0.0-64bit.msi (小乌龟)
- TortoiseGit-LanguagePack-2.12.0.0-64bit-zh_CN.msi (小乌龟语言包)
冲突场景&解决方法
1. 本地develop分支与服务器develop分支冲突
解决方法:
利用sourcetree工具,将本地代码切换到develop分支,然后拉去服务器develop分支代码,然后解决冲突即可
2. 服务器develop分支和服务器master分支的冲突
解决方法:
这种场景可能也经常遇到,最常见的是当服务器develop分支发起合并请求到master分支的时候,也会出现冲突,此时小伙伴也不要着急,要先知道原因才可以解决问题
遇到这个场景的原因:
是其他分支的代码先合并到master分支,导致master分支代码与develop的代码发生了不一致,此时只需要本地切换分支到develop,然后拉去一下远程master分支代码到本地,然后本地解决冲突后,再提交到develop分支,此时develop合并到master的冲突会自动解决(神奇吧!!!)
总结
- 本文解决冲突的工具是使用SourceTree+TortoiseGit解决冲突,其实其他IDE工具自带git工具亦可解决冲突,只要解决冲突的流程方法是对的即可
- 场景2的冲突是小伙伴们经常遇到的问题,但是不知道如何解决,其实只要遵循一个原则,开发人员只能在本地develop分支解决冲突,
步骤:- 先拉去远程冲突的分支到本地develop分支,
- 然后在本地develop分支解决冲突,
- 最后再推送最新代码到服务器develop分支即可