规范
- 业务单独在develop分支上拉一个业务分支,如xf_0708。
- 开发完成后直接把此业务分支交由QA去测试。
- 测试通过后将此分支合并到develop上去,以便后面上线。
- 遵循git手把手教程中的规范
- 遵循教程中个人开发,团队开发相关流程及命令
- 团队开发中在push代码到远端仓库是必须先fetch和rebase代码
- 团队开发中开发阶段建议至少每天fetch和rebase一次远端代码,测试阶段在每个测试阶段开始前建议fetch和rebase一次远端代码
- 合并代码至develop前必须fetch和rebase一次远端代码
- 严禁使用–force
- commit模版:
- rebase from develop to xf-1.0 at 201405061315
-
merge from xf-1.1(hotfix-jiraid) to develop at 201405071230
日常操作
- 检出代码库 git clone $repo
- 将文件修改添加到缓存区 git add $filename
- 提交文件更改 git commit -m $message
- 推送本地分支到远端服务器 git push $remote $branch:$branch
- 本地仓库回退到某个提交的状态 git reset --hard $sha1
- 查看本地分支以及当前分支 git branch
- 删除本地分支 git branch -d $branch
- 切换分支 git checkout $branchname
分支使用流程
- 拉代码库:git clone $repo
- 切到develop分支:git checkout develop
- 更新develop分支:git pull origin develop
- 根据业务创建开发分支:git checkout -b $branchname
- 推送到远端仓库:git push origin $branchname
- 进行开发并提交(git add ,git commit)
- 需要推送本地提交到远端分支时先把远端分支变化拉下来:git pull --rebase origin $branchname
- 推送到远端仓库:git push origin $branchname
- 合并到develop:见合并到develop章节
合并到develop
- 切到develop:git checkout develop
- 更新develop:git pull origin develop
- 切到开发分支:git checkout $branchname
- 更新开发分支(可能需要解决冲突):git pull --rebase origin $branchname
- 开发分支rebase develop分支:git rebase develop
- 切到develop:git checkout develop
- 合并开发分支:git merge $branchname --no-ff -m '提交说明'
- 推送develop到远端仓库:git push origin develop
hotfix流程
- 更新本地master:git pull origin master
- 创建hotfix分支:git checkout -b hotfix_ooxx
- 修改并提交。
- 推送到远端仓库:git push origin hotfix_ooxx
- 找有合并master权限的人将该分支合并到master。
- 合并完master将该分支合并回develop分支
- 删除hotfix分支
赠送:pull request流程
- fork代码库到自己的帐号下。
- clone到本地。
- 创建开发分支。
- 开发完毕,rebase主库master,push到自己fork出来的仓库。
- 在gitlab上发pull request。
- 等待代码review结果,确认没问题则merge到主库master。