鲲鹏社区首页
中文
注册
提交你的第一个PR

提交你的第一个PR

openGauss

发表于 2023/08/25

362

Pull Request,在开源社区也常常被简称为PR,是自己修改源代码后,请求上游仓库采纳该修改时采取的一种行为。

准备好自己远端仓库

在提交PR之前,您应该已经完成以下操作:

步骤 1 将您要提交PR的上游仓库fork到您自己的gitee账号下

比如,以https://gitee.com/opengauss/practice-course为例:


点击仓库右上角的“fork”按钮即可fork。

本例fork到了一个叫xzp-blog的账号下(您应该fork到自己的账号下):


这时会出现个人账号的图标,选中自己账号然后点击确认按钮。

接着该仓库会出现在自己的主页下。例如:

https://gitee.com/自己的gitee账号名/practice-course


注意:如果之前已经fork该代码仓又想要删除后重新fork,则可以先进入自己的代码仓,然后进入“Settings(设置)”页面,点击左侧导航栏的“Delete(删除)”链接,在确认操作后,要求对用户进行密码校验确认。校验密码后即可删除仓库。

在gitee页面上fork完毕后,下面的步骤在cmd命令行窗口运行git命令。

步骤 2 初始设置Git。

打开运行窗口,并输入cmd,点击"回车"进入命令提示符界面。


在cmd中,按以下命令配置全局Git用户名、全局Git邮箱(请用英文输入):

git config --global user.name "your-user-name"
git config --global user.email "your-email-address"

注意邮箱地址应与gitee账号的邮箱地址保持一致。

your-user-name需要替换为自己的gitee账号。

your-email-address需要替换为自己的邮箱地址。

在本例中是这样的:

git config --global user.name “xzp-blog”        # 需要配置成你自己的Gitee账号
git config --global user.email "xzp-blog@qq.com"      # 需要配置成你自己Gitee账号的提交邮箱

步骤 3 将自己账号下这个fork而来的仓库git clone到本地。

git clone https://gitee.com/your-user-name/practice-course.git

your-user-name需要替换为自己的gitee账号。

如:git clone https://gitee.com/xzp-blog/practice-course.git

步骤 4 进入我们的工作目录

cd practice-course\06 PR\2023

我们的提交都提交到这个目录,注意这个目录下的其他内容不要修改

步骤 5 以自己的Gitee ID为名建立空文件

以自己的Gitee ID为名建立空文件:

cd . > xzp-blog             # 应用自己Gitee ID

说明:“cd .”表示改变当前目录为当前目录,等于没改变,故该操作不会有任何输出。将该输出重定向到一个文件即创建了一个空文件。

步骤 6 将此文件加入到git缓冲区

git add . 
git status 

步骤 7 进行commit提交至本地仓库

git commit -s -m "Add xzp-blog"     # 将引号中斜体字换成自己Gitee ID

步骤 8 推送到自己的远端仓库

git push -f origin master

注意:1) 在这个过程中,您需要输入Gitee账号及其登录密码。2) 如果后续还有commit要推送到远端仓库的话,直接用git push命令就行了。

步骤 9 查看状态

git status

PR 提交

步骤 1 到gitee网页查看自己的仓库。

浏览器输入:https://gitee.com/your-user-name/practice-course

your-user-name需要替换为自己的gitee账号。


步骤 2 点击“+Pull Requests”按钮进入以下页面。


填写标题文字和注释(注释请尽量详细,上图中的注释只是示例),比如:

标题可以这样写:xzp-blog - 提交了以自己Gitee ID命名的文件

(注意前面要改成自己的Gitee ID)

注释可以这样写:

提交了以自己Gitee ID(woodrabbit)命名的文件,主程序会将我的ID打印出来。

然后点击左下角的“创建 Pull Request”按钮。


创建之后还要在你的PR下面的评论区中键入“/check-cla”,点击“评论”刷新CLA签署状态。


提交成功后原始远程仓(https://gitee.com/opengauss/practice-course/pulls)将会显示此次提交:


这时作为社区的一个contributor,您的作业已经提交完毕。如果您提交的是代码,系统一般会自动进行test。接下来要等待社区的committer进行review,如果合乎要求,他/她会进行/lgtm动作。之后就需要社区的maintainer进行最后确认,如果一切顺利,他/她会进行/approve动作,这之后,您的作业(或代码)就会合到上游远程仓库里去。

openGauss社区CLA签署地址

https://clasign.osinfra.cn/sign/Z2l0ZWUlMkZvcGVuZ2F1c3M=

openGauss社区评论区命令说明

https://gitee.com/opengauss/community/blob/master/contributors/command.md

如何运行仓库中的程序

如何运行该仓库上的main程序以观看效果?该main程序可以在Linux和类UNIX的macOS上运行,在Windows系统上,同可以安装openEuler子系统或在虚拟机上安装openEuler操作系统以验证效果。运行该程序需要执行的命令如下:

cd practice-course/06 PR/2023/src
gcc main.c
./a.out

这样凡是正确提交了Gitee ID的都可以在屏幕上显示出来。

本页内容