开发过程中git分支管理总结

1、分支类型规范

FEA 需求分支
DEV 开发分支
TEST 测试分支
PRE 预发布分支
master 主分支

2、git 分支规范

开发过程中git分支管理总结
1. 每个需求建立一个FEA分支,确保每个需求是相互独立的
2. 修改的代码可以暂存在本地git
3. 开发自测:开发完成后可本地自测,将FEA分支上的代码提交到DEV分支
4. 提测:自测无误后,将DEV分支上的代码提交到TEST分支
5. 测试结果

  • BUG:在原来的FEA分支上进行代码修改,然后再重复2.3.4.
  • 无误:将TEST分支上的代码提交到PRE分支

测试环境与预发布环境可能略有不同,需多次测试
6. 预发布无误:将PRE分支上的代码交由leader审核,合入master主分支(在合入master分支的需求中不要夹杂其他还在开发的需求,切记!!!
7. PRE合入master后建立TAG标签 【FEA、DEV、TEST分支可删】
8. 其他还在开发的FEA分支在合入DEV分支之前需要将master反合入FEA分支,然后重复2.3.4.5.6.7.中的步骤
9. 修复线上BUG:新开FEA分支,然后重复2.3.4.5.6.7.中的步骤

上传的代码确保无mock数据、无console.log!

3、常用的git命令

git命令 描述
git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。
git add XX 把xx文件添加到暂存区去。
git commit –m “XX” 提交文件 –m 后面的是注释。
git status 查看仓库状态
git diff XX 查看XX文件修改了那些内容
git diff 展示本地仓库中任意两个commit之间的文件变动
git diff 两个分支的差异
git log 查看历史记录
git reset --hard HEAD^或者 git reset --hard HEAD~ 回退到上一个版本
git reflog 查看历史记录的版本号id
git checkout – XX 把XX文件在工作区的修改全部撤销。
git rm XX 删除XX文件
git remote add origin https://xxx.com 关联一个远程库
git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库
git clone https://xxx.com 从远程库中克隆
git checkout –b dev 创建dev分支 并切换到dev分支上
git branch 查看当前所有的分支
git checkout master 切换回master分支
git merge dev 在当前的分支上合并dev分支
git branch –d dev 删除dev分支
git branch name 创建分支
git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作
git stash list 查看所有被隐藏的文件列表
git stash apply 恢复被隐藏的文件
git stash drop 删除被隐藏的文件
git stash pop 恢复文件的同时 也删除文件
git remote 查看远程库的信息
git remote –v 查看远程库的详细信息
git push origin master 把master分支推送到远程库对应的远程分支上

可参考: https://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html

4、 常用的图形化git版本管理工具

SourceTree、SmartGit