# git **Repository Path**: mirrorvim/git ## Basic Information - **Project Name**: git - **Description**: git项目开发规范. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-09 - **Last Updated**: 2022-07-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Git 项目开发规范 ## 作者 **chenxuan** ## 分支策略 1. **master**主分支,用于生产环境的主分支 2. **test**分支,用于测试环境分支,一般可以自动CICD 3. fix/* 分支,用于修补线上bug分支 4. feat/* 分支,用于开发功能分支 5. refactor/* 分支,用于重构代码 ## 三大环境 1. 生产环境 > 用于部署成品的环境,master分支 2. 测试环境 > 用于部署测试,test分支 3. 开发环境 > 用于本地进行测试,一般需要连接公司VPN开发 ## 开发流程 1. git clone remote-url 克隆仓库 2. 拉取最新代码 - git fetch origin master:master 不在master - git pull origin master 在master 3. 开发 1. 创建新分支 - git checkout -b feat/xxx master 开发新功能 - git checkout -b fix/xxx master 修补bug - git checkout -b refactor/xxx master 重构 2. 推送新分支 - git push origin xxx 3. 合并到test分支 > 前提是在开发环境测试没有问题 1. git fetch origin test:test 2. git checkout test 3. git merge xxx(自己的分支) - 没有冲突 1. git push 推送分支 - 产生冲突 1. git checkout -b merge/xxx test > 解决冲突问题 2. git merge xxx 3. git push origin xxx 4. 继续向test合并 4. 提出master的merge request > 前提是在测试环境没有问题 - 产生冲突和test解决方式类似 - review没有问题,合并分支到master,结束开发 - review出问题 1. 继续修改代码,解决问题再次请求合并 4. 开发完毕,删除分支 1. git push origin :xxx(远程分支名字) 2. git branch -d xxx(本地分支名字) ## 注意事项 1. 提交merge request前**必须经过测试环境检验** 2. test分支代码**不能**合并到master分支 3. test分支可以直接合并,master分支必须经过审核 ---