一、本堂课重点内容:
- Git的前世今生
- Git基本使用方式
- Git的研发过程
二、详细知识点介绍:
Git的优点
- 协同工作:因为绝大多数的公司都是基于Git进行代码管理,因此学会Git是每个程序员必备的技能。
- 开源社区:目前绝大多数的开源项目都是基于Git维护,参与这些项目开发都需要使用Git。
Git基本使用方式
- 配置
- 提交代码
- git commit
- 远端同步
Git的研发过程
2.1 集中式工作流
- 获取远端master分支代码
- 直接在master分支完成修改
- 提交前拉取最新master代码和本地代码合并使用(rebase),如果有冲突解决冲突
- 提交本地代码到master
2.2 分支管理工作流
2.2.1 Git Flow
分支类型丰富,规范严格
- Master:主干分支
- Develop:开发分支
- Feature:特性分支
- Release:发布分支
- Hotfix:热修复分支
2.2.2 Github Flow
只有主干分支和开发分支,规则简单,基于Pull Request 往主干分支中提交代码。
2.2.3 Gitlab Flow
在主干分支和开发分支的基础上构建环境分支,版本分支,满足不同发布or环境的需要。
原则:upstream first 上游优先
只有上游分支采纳的代码才可以进入到下游分支,一般上游分支就是master。
2.3 代码合并
2.3.1 Fast-Forward
不会产生一个merge节点,合并之后保持一个线性的历史,如果target分支又了更新,则需要通过rebase操作更新source branch 后才可以合入。
2.3.2 Three-Way Merge
三方合并,会产生一个新的merge节点
三、课后个人总结:
本节课将带领大家认识到Git及其版本的发展历史,帮助同学理清Git的发展脉络,更好地进行实践操作。