Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
基本概念
我们先来理解下Git 工作区、暂存区和版本库概念
- 工作区:就是你在电脑里能看到的目录。
- 暂存区:英文叫stage, 或index。一般存放在 “.git目录下” 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
- 版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
基本操作:
git init
创建新的git 仓库git clone
使用 git clone 拷贝一个 Git 仓库到本地git add
添加改动到暂存区git status
查看本地状态git commit
提交改动到本地仓库git log
查看记录git push
推送至远程仓库git fetch
获取远程代码git pull
获取并合并远程代码
tips:
- .gitignore 会忽略定义在其中的文件(夹)
- 使用git config –global 设置账户和邮箱
git flow 工作流
Gitflow工作流程围绕项目发布定义了严格的分支模型。Gitflow流程并没有增加任何新的概念或命令。其特色在于,它为不同的分支分配了非常明确的角色,并且定义了使用场景和用法。
主要分支:
1. master分支
主分支,产品的功能全部实现后,最终在master分支对外发布。
2. develop分支
开发分支,基于master分支克隆,产品的编码工作在此分支进行。
3. release分支
测试分支,基于delevop分支克隆,产品编码工作完成后,发布到本分支测试,测试过程中发现的小bug直接在本分支进行修复,修复完成后合并到develop分支。本分支属于临时分支,目的实现后可删除分支。
4. hotfix分支
Bug修复分支,基于master分支或发布的里程碑Tag克隆,主要用于修复对外发布的分支,收到客户的Bug反馈后,在此分支进行修复,修复完毕后分别合并到develop分支和master分支。本分支属于临时分支,目的实现后可删除分支。
5. feature分支
功能特征分支,基于develop分支克隆,主要用于多人协助开发场景或探索性功能验证场景,功能开发完毕后合并到develop分支。feature分支可创建多个,属于临时分支,目的实现后可删除分支