git flow,也就是git工作流程,是工作中合作开发的时候必须要会的知识点。以下提到的gitflow只是一个标准参考,团队可以不用完全按照他的规定进行代码管理,有自己的团队特色,或者根据实际情况作出一些调整。不过应该靠近标准,这样省时省力,遇到问题也有参考的解决办法。
- 日常工作中,我们一般都是分工开发,拉取项目之后在本地建立自己的功能分支,最后会合并到develop分支
- 最常见的问题就是修改公共文件或者安装新的package 会造成代码冲突,所以以上修改均应在develop上统一修改并在各个分支上同步。
- 项目最开始就应该做好项目架构的搭建和代码的同步,否则最后需要耗很多时间在代码整理上。
- 所有gitlab和github上的可视化操作都可以通过本地指令实现,程序员还是多用用指令比较酷。
Git flow 概念
What Git flow
GitFlow是由Vincent Driessen(文森特德里森)创建的Git的分支模型(git操作流程标准)它引起了很多关注,因为它非常适合协作和扩展开发团队。
- master:主分支
- develop:主开发分支,包含确定即将发布的代码;
- feature:新功能分支,一般一个新功能对应一个分支,对于功能的拆分需要比较合理,以避免一些后面不必要的代码冲突;
- release:发布分支,发布时候用的分支,一般测试时候发现的 bug 在这个分支进行修复;
- hotfix:热修复分支,紧急修 bug 的时候用。
Why Git flow
- 并行开发
- 协作开发
- 发布阶段
- 支持紧急修复
How Git flow
本地自己分支开发完毕提交流程
- clone
- git branch develop
- git checkout -b feature1
- 写代码
- git add -A
- git commit -m "xxx"
- git push
- 来到gitlab 申请merge
- 或者 本地合并到develop 然后 push
申请merge有冲突
- git checkout develop
- git pull
- git checkout lgf
- git merge develop
- 手动解决冲突
- git add
- git commit
- git push
- 重新申请merge