如何向开源项目提交pr,完成人生中第一次代码贡献。

12,023 阅读3分钟

今天教大家如何给开源项目提交pr,成为一名开源贡献者。pr是Pull Request的缩写,当你在github上发现一个不错的开源项目,你可以将其fork到自己的仓库,然后再改动一写代码,再提交上去,如果项目管理员觉得你的提交还不错的话,就会将你的代码合并,然后你就成为了这个代码的贡献者了。

基础的git操作咱今天就不说了,直接步入正题,傻瓜式流程,直接按步操作即可。

一、fork代码

先登录自己的github账户,找到自己要提pr的项目。这里我们以element-plus为例。

image.png

进入主页后,可以看到右上角有Fork按钮,点击之后,等待几秒就会fork成功。

image.png

我们可以看到,此时该项目就跑到我们自己的仓库目录下了,接下来我们就可以将该项目克隆到本地,进行后续操作。

二、clone代码

  1. 点击页面上右边的Code绿色按钮,再点击复制按钮,复制该链接,将其克隆到本地。

image.png

  1. 在本地的某个目录下,打开命令行,输入如下代码
git clone https://github.com/smalller/element-plus.git

注意!注意!注意!上面的地址是我仓库的地址,千万不要直接复制,要去复制自己仓库下的地址。

image.png

这样就代表项目已经成功克隆到本地。

  1. 接下来,我们可以在克隆好的项目的根目录下,用以下命令,查看自己是否与远程仓库建立了连接
git remote -v

image.png

可以看到,已经建立连接,接下来还需要与上游建立连接,这里上游指的是一开始fork的那个项目源,即element-plus。

  1. 与上游建立连接,这段代码可直接复制。
git remote add upstream https://github.com/element-plus/element-plus.git

此时,我们再输入git remote -v,就可以看到本地已经和远程仓库以及上游建立了连接。

image.png

三、同步最新代码

为什么要这么做?因为当你在开发的时候,可能其他人也在开发,很有可能你fork的代码已经不是最新的了,这时你就需要不断更新你的代码,至少保证在push前要更新一次,这样才能确保不会发生代码冲突。

命令行输入以下代码

 git fetch upstream dev  

为什么这里是dev分支,因为该项目默认clone的就是dev分支下的代码。当然这里你也可以自己在本地创建一个分支,然后拉取,最后再去dev分支里合并自己创建的分支代码。

四、编写代码

接下来,就是自由发挥环节了,这里不做过多说明了。

五、提交代码

代码编写完成后,就可以提交代码了。当然,不同开源项目可能会有自己的提交规范,我们可以看下element-plus的提交规范。

image.png

我们只需按照其中Pull Request规范来做即可。

  1. commit 代码
git add .
git commit -m fix(components): [el-scrollbar] fix xxx bug
  1. push 代码
git push origin dev

push代码成功后,我们就将进行最后一步,提交pr。

六、提交pr

我们回到自己仓库的项目主页,可以看到刚才提交的记录,则表示之前的操作都已成功。接下来,点击箭头所指的Pull Requests选项。

image.png

点击箭头所指的New pull request按钮

image.png

接下来,点击Creat pull request即可提交成功。

image.png

最后,只需耐心等待管理员的审核即可。开源项目的所有pr记录可以在这里查看,包括你刚才提交的。

image.png

如果你的提交被审核通过,则会像下面这个这样,显示All checks have passed

image.png

这样,整个提交pr流程就已完成,是不是觉得很简单,可以自己去试试哦,毕竟能成为一个开源项目的贡献者还是挺不错的,也算是面试的加分项。