Git开发使用规范
一、常规操作
(一)克隆项目:
git clone 项目仓库地址 [克隆下载的文件夹名] # SSH或HTTP仓库地址都可以,克隆下载的文件夹名非必填
(二)创建个人开发分支命名规则:
-
功能开发分支名:
feature_姓名缩写[_需求简要]_TAPDId (例如:feature_gf_add-dialog_123134) -
解决bug分支名:
fixbug_姓名缩写[_需求简要]_TAPDId (例如:fixbug_gf_fix-dialog_123134)
(三)创建个人开发分支:
注意:创建个人开发分支必须基于最新到master,而不是其他分支!
注意:一个需求一个开发分支,不能多个需求公用一个开发分支!
# 如果不在master分支,需切回master分支(已在master,忽略本步骤)
git checkout master
# 拉取最新master
git pull
# 基于master创建分支feature_yst_infrom-submit_123123
git checkout -b feature_yst_infrom-submit_123123
(四)每次(天)开发前:
注意:开发前务必切回自己的开发分支!
# 拉取个人开发分支最新代码
git pull
# 拉取远端master,便于后续部署(建议)
git pull origin master
(五)小功能点开发结束后(勤提交,防止代码丢失):
# 跟踪工作区修改和新增文件,推送到暂存区
git add .
# 提交到本地仓库。描述规则:'feat:新增内容描述';修改描述规则:'fix:修改内容描述'。
git commit -m '描述'
# 新分支首次推送到远端
git push -u origin 个人开发分支名
# 非首次推送到远端
git push
(七)项目开发、合并到部署分支(以下是从开发分支上开始操作)
注意:绝不可将测试部署分支合并到个人开发分支上
注意:冲突解决【不会就问,安全第一】
# 开发分支操作:同步更新本分支
git pull
# 开发分支操作:拉取最新master
git pull origin master
# 开发分支操作:解决冲突并push
# 开发分支操作:static2项目打包 (非static2项目无需操作本步骤)
grunt publish:项目名
# 开发分支操作:切换部署分支,以neibu_sharks为例
git checkout neibu_sharks
# 部署分支操作:同步更新部署分支
git pull
# 部署分支操作:拉去最新master
git pull origin master
# 解决冲突:多以master为主,具体视情况而定,牢记口诀【不会就问,安全第一】
# 部署分支操作:拉去个人开发分支代码
git pull origin 个人开发分支
# 解决冲突:非个人修改的文件多以master为主,个人修改的文件冲突需和冲突的开发者一起解决,牢记口诀【不会就问,安全第一】
# 部署分支操作:static2项目需打包(非static2项目无需操作本步骤)
grunt publish:项目名
# 部署分支操作:跟踪推送修改、新增文件到暂存区(非必然操作)
git add .
# 部署分支操作:推送暂存区文件到本地仓库(非必然操作)
git commit -m '描述'
# 部署分支操作:开发内容推送到远端
git push
# 部署:需要联系KOA老师部署对应的测试分支URL,具体询问leader
二、前端项目开发、合并分支操作流程图解
【强制】创建开发分支流程:A->B->C
【强制】开发过程必须经常提交代码:D
【强制】每日或隔段时间再开发前必须操作:E->F
【强制】开发分支代码合并到neibu分支测试环境:E->F(解决冲突)->G->H->I(解决冲突)->J(解决冲突)->K