规范化提交代码流程

Git

下面只是一些我工作时候的经验总结,也是我进公司的导师这样告诉我的。如果有更好的,欢迎留言。

# 背景

有时候必要的规范化提交代码的流程,可以帮助我们精准的把控项目的稳定性。这里不强调快是因为,从来规范化的提交代码,从来就是不图快的,线上代码稳定比快更重要。这个是每个公司衡量项目稳定性的尺子,我遇到过,同事上线不按操作来,然后把我的线上代码冲掉的情况,而我具体问他他也说不上来是怎么操作的。

# 流程

GitLab上面dev是线上分支,开发的时候从远程机器上将最新的dev分支拉取,创建新的分支之后开发,测试完毕之后合并到dev上,解决冲突之后push到远程机器,准备上线。

# 步骤

# 一、 从远程拉取代码

git pull origin dev
1

# 二、 创建并切换到新分支

git checkout -b newBranch
1

# 三、开发之后保存提交代码到本地仓库 or 远程仓库

git status
git add .
git commit -m 'git log'
git push origin newBranch  # 提测之后QA会拉取gitLab上面newBranch分支的代码
1
2
3
4

# 四、测试完毕合并dev

  1. newBranch分支中,主要检查代码,为合并做准备
git status # 查看修改的文件目录有没有问题
git diff  # 在提交前先看自己改了什么,没有问题了再进行add
git add .  # 把需要提交的东西放进缓存区
git commit -m '这次提交的题目' #提交代码并填写修改的目录便于以后查找
git rebase -i HEAD~4 #合并4个commit,如果只有一个commit的话就不需要合并直接git rebase
git checkout dev  #切换到dev分支
1
2
3
4
5
6
  1. dev分支中,将dev代码更新成最新的
git pull origin dev #远程存储库中的代码进行提取并合并到dev分支中,保证dev中的代码是最新的
git checkout newBranch  #切换到newBranch分支
1
2
  1. newBranch分支中,开始合并
git rebase dev #合并dev分支到newBranch中
#'如果有冲突的话'
git status  #看一下是哪个文件冲突
git diff 'file'  #看一下file文件的那些部分需要解除冲突,并手动解除冲突
git add . #把解除完冲突的文件提交到暂存区里
git rebase --continue  #继续rebase
#'如果想退回rebase之前的状态'
git rebase --abort
#'成功之后'
git checkout dev #切换到dev分支
1
2
3
4
5
6
7
8
9
10
  1. dev分支中,合并newBranch分支的代码
git merge newBranch   #合并newBranch分支
1

# 五、将代码上传到远程仓库

git push origin dev #上传代码到远程仓库,更新最新的代码
1
更新时间: 2021-09-15 12:03