3 Star 3 Fork 2

PersonalSummary / Document

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
code_commit_guide.md 6.90 KB
一键复制 编辑 原始数据 按行查看 历史
闻飞 提交于 2022-11-05 15:17 . add basic_files

代码提交手册及示例

目录

概述

代码开发提交整体分为三个阶段:开发提交Merge Request审核合并,示例步骤如下:

步骤条件:

第一阶段:开发

1.1 fork远程仓到个人Group中

在浏览器中打开基线仓库页面,点击右上角fork按钮,在新开的页面选择个人Group,然后点击确定,等待fork操作完成,完成后会在个人Group下出现仓库,操作步骤如下图1,2。 image-20221104110725115 图1 image-20221104110935956 图2

1.2 查看个人仓下是否有fork过来的仓

  • 点击个人头像然后选择进入个人主页,如下图3所示
  • 然后点击Personal projects即可看到个人Group下的仓库,点击刚刚fork过来的docs仓,即可进入个人docs仓,如下图4所示
  • 进入个人的docs仓后将其链接复制待用,复制方法如下图5所示两种方法均可

image-20221104111812511

图3

image-20221104112121598

图4

image-20221104112831105

图5

1.3 删除个人仓的方法

  • 进入个人仓的页面,将光标放到Settings上然后选择General,如图6所示
  • 下拉右边的窗口找到Advanced,然后点击右边的Expand,如图7所示
  • 下拉找到Delete project按钮,点击该按钮,如图8所示
  • 在弹出的框中输入仓名确认,然后点击Yes, delete project按钮即可删除该仓,如图9所示

image-20221104123334748

图6

image-20221104123529437

图7

image-20221104123742559

图8

image-20221104123921256

图9

1.4 更新提交代码

1.4.1 直接fork仓代码到本地然后修改提交

  • 将代码下载到本地

    # 方法一:直接指定分支下载到本地,然后进入仓内通过git branch确认当前所在仓是否目标仓
    git clone -b develop http://10.20.42.40/wen_fei/docs.git
    cd docs/
    git branch
    # 方法二:先clone到本地,然后通过通过git checkout切换到指定分支
    git clone http://10.20.42.40/wen_fei/docs.git
    cd docs/
    git checkout develop
    git branch
  • 修改代码并合入提交

    git add .
    git commit -s
    git push -u origin develop

1.4.2 在本地基线仓库中修改合入到个人远程仓中

  • 下面操作中的分支备注

    remote/origin: 指向的是远程基线仓库 http://10.20.42.40/riscv_openharmoney/docs
    remote/origin/master: 指向的是远程基线仓库的master分支
    remote/origin/develop: 指向的是远程基线仓库的develop分支
    本地develop分支: 和远程remote/origin/develop分支关联
    remote/private_project: 指向的是远程私仓 http://10.20.42.40/wen_fei/docs
    remote/private_project/master: 指向的是远程私仓的master分支
    remote/private_project/develop: 指向的是远程私仓的develop分支
    本地dev分支: 和远程remote/private_project/develop分支关联
  • 进入本地基线的docs仓中,此时在develop分支上,该仓中有相关代码的修改

    git clone -b develop http://10.20.42.40/riscv_openharmoney/docs
    cd docs
    git add .
    git commit -s
  • 添加个人Group的docs仓到本地

    git remote add private_project http://10.20.42.40/wen_fei/docs.git
    git fetch private_project
  • 创建本地分支与个人远程仓分支关联

    git checkout -b dev private_project/develop
  • 将develop中修改merge到dev分支中

    git merge develop
  • 将dev分支中的修改合入到远程私仓中,注意本地dev名称和远程私仓的develop分支名称不一致

    git push -u private_project dev:develop

第二阶段:提交Merge Request

2.1 创建issue

一个issue可以关联多个仓代码的合入

  • 进入基线的docs仓,点击Issues,如下图10所示
  • 点击New issue,创建新的issue,如下图11所示
  • 填写issue单,标题和详细内容为必填项,如下图12所示
  • issue使用完注意关闭

image-20221104140948234

图10

image-20221104141458127

图11

image-20221104142049778

2.2 创建MR并关联issue

  • 进入个人Group的docs仓,点击Merge requests,如下图13所示
  • 点击New merge request,创建新的MR,如下图14所示
  • 仔细检查确认选择要合入代码的源分支和目标分支,注意别合错分支了,如下图15所示
  • 填写MR的内容,并关联issue,如下图16所示
  • 如果发现代码有问题,可在本地继续修改代码然后合入

image-20221104142547537

图13

image-20221104142741975

图14

image-20221104143123927

图15

image-20221104150826045

图16

2.3 代码继续修改提交

​ 在提交PR后发现代码有很多问题需要继续修改处理,此时本地修改后必须使用git commit --amend,这样能够保证我们的提交只比基线仓只提前一个commit,不会出现多个commit。我们要保证代码合入是一个MR只有一个commit,具体操作如下:

​ 注意:提交完成后不需要再次执行步骤2.2创建MR,之前创建的MR会自动更新代码的修改

git clone -b develop http://10.20.42.40/wen_fei/docs.git
cd docs
...
git add .
git commit --amend # 此处特别注意必须使用 --amend
git push -f origin develop # 此处必须加-f,否则提交不上去

2.4 联系审核人员进行代码合入

​ 代码完成后,将对应的MR链接发送给审核人员请求代码合入。

第三阶段:审核合并

​ 代码审核人员进入Merge requests链接后检查以下几个部分内容,具体如下图17所示

  • 检查确认对方分支和要合入的分支是否正确
  • 检查是否有关联的issue并检查关联的issue内容描述和提交的代码是否一致
  • 点击Commits,检查提交的commit是否只比当前基线超前一个
  • 点击Changes,检查提交的代码功能是否符合要求,包括规范和功能
  • 上面检查确认无误后,点击Approve接受修改
  • 代码审核通过后点击Merge,代码合入基线

image-20221104160326763

图17

C++
1
https://gitee.com/personal-summary/document.git
git@gitee.com:personal-summary/document.git
personal-summary
document
Document
master

搜索帮助