提交你的第一个PR
发表于 2023/08/25
0
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的都可以在屏幕上显示出来。
本页内容