Git 介绍
Git 简介
概述
Git
是一种分布式版本控制系统(VCS)。
用来取代SVN(Subversion,集中式版本控制系统)。
Git 优势
-
必须先更新代码,并解决冲突后,才能推送到服务器。 避免服务器中的代码冲突,保证服务器中的代码,是能够运行的版本。
-
必须写注释,才能提交代码。
-
多分支模型。 多分支并行开发,不同功能在不同的分支,相互之间不会产生干扰。
-
权限管理。 项目负责人,才有主分支的写权限,经过负责人审核后的代码,才能被合并。提高代码质量,排除低级错误。
Git 仓库的状态
Git 基本工作流程
项目代码存储 Git 服务器上。开发人员从服务器拉取代码,修改完成后再提交到服务器。
基本步骤如下:
- 将 Git 远程仓库,
克隆(clone)
到本地。 - 修改代码,
提交(commit)
到本地仓库。 - 本地仓库的修改,
推送(push)
到远程仓库。 - 远程仓库有更新,
拉取(pull)
,合并到本地仓库
Git 开发模式
Git 分支模型
- 开发分支模型(main / develop / feature)
分支 | 分支名称 |
---|---|
main | 主分支 |
develop | 开发分支 |
feature | 特性分支 |
hotfix | 线上Bug修复分支 |
- 线上Bug修复分支模型(main / develop / feature / hotfix)
此模型为非常规模型,当出现线上Bug,需要紧急修复时使用。
- feature分支 和 hotfix分支,项目发布后,即可删除。
Git 分支权限
-
项目负责人:
main分支
、develop分支
的读写
权限。审核合并请求
。将feature分支
合并到develop分支
;将develop分支
合并到main分支
。 -
开发人员:
main分支
、develop分支
的只读
权限。建立feature分支
进行开发;发起合并请求
。
开发流程(详解)
详细说明:
- 开发人员
克隆
项目仓库到本地。 - 新建
feature
分支(从develop分支创建新分支),并同步到服务器。 - 在 feature 分支进行开发。
- 定期
同步
代码到服务器上 feature 分支(建议每天至少一次)。 - 开发完成后,全部代码提交并推送到服务器 feature 分支。
- 自测完成后,
合并分支
(通过 Gitea 完成)。开发人员代码自测完成后,创建合并请求
,从 feature 分支合并到 develop 分支。合并请求需写标题和内容,标题中须写明版本号,内容中写明本次修改内容。 - 项目负责人审核
合并请求
。审核通过后执行合并;不通过,则退回修改(退回至 步骤 3)。 - 合并后,由管理员或者管理员指定人员(非本次开发人员)打包给测试人员。若有Bug,则退回 步骤 3 修改Bug ;若无Bug,则进入下一步。
- 项目发布;项目发布后,由项目负责人将 develop分支 合并到 master分支 。
- 项目负责人,为此发布版本,打上
版本标签
。标签为版本号,版本号命名规则如附录所示。