如何为开源项目ant-design提PR?

今天无聊看了看ant-design的cascader组件,下载源码后发现实现基于rc-cascader源码实现的,并且都是阿里维护的。于是我就clone了rc-cascader源码到本地。本地运行npm i然后执行下了npm run test发现测试报错如下:

心想不应该啊,我git clone的master分支,什么都没改咋就报错了?于是追查了下去发现是antd的维护者提的另一个pull 985导致的。

经过确认准备提一个修复的PR给rc-cascader,我先在rc-cascader提了一个issue434。如下

标题 Error when running npm run test. 描述了遇到的问题。 评论部分放上了报错截图和导致问题pr的链接

提完issue接下来就可以按照问题准备自己的PR了。

  1. 第一步,找到官方的代码仓库fork代码到自己的github仓库中,我们本文称官方的代码仓库为fork源,fork到自己github的仓库称之为fork镜像。
  1. 第二步,在自己的仓库找到fork的仓库并git clone代码到本地,我们称之为fork本地镜像。
  1. 第三步,本地打开clone下来的代码,执行git remote add upstream github.com/react-compo... ,upstream后的地址来自fork的源的浏览器地址加.git后缀。如下图:

这样就将添加cascader的远程地址,用于将fork本地镜像和fork源代码做同步使用。本地执行git pull upstream master就可以将本地clone的fork本地镜像和fork源做代码同步。

  1. 第四步,本地基于master分支创建新的分支fix-snapshots-error,修改代码,然后执行npm run test -- -u更新本地快照。我这里是快照错误,所以我没有什么要修改的代码,将快照更新后就commit + push到自己的fork镜像仓库中了。

进入自己fork镜像仓库中,会有如图所示的提示,询问你是否创建PR,点击绿色按钮创建PR即可。然后编辑PR模版:

标题可以参考已经合并的PR填写,添加描述(antd有一套自己的PR模版,按照要求来可以更利于维护者们的审核)并提及这个PR是用于解决哪个issue的。然后创建完PR你就会发现:

你刚才提的issue底下就显示了你提的PR的链接!(此处我的PR是已经被合并了,所以显示closed和merged)

  1. 第五步,等待开源代码的维护者们review你的PR并且提出的修改意见,初衷都是希望代码质量更高,经过你们的商讨和修改,维护者们将会同意你的PR合并到他们的分支,至此你的PR就已经进入了开源的世界!
相关推荐
爱吃羊的老虎12 分钟前
【WEB开发.js】getElementById :通过元素id属性获取HTML元素
前端·javascript·html
妙哉73629 分钟前
零基础学安全--HTML
前端·安全·html
咔叽布吉36 分钟前
【前端学习笔记】AJAX、axios、fetch、跨域
前端·笔记·学习
GISer_Jing1 小时前
Vue3常见Composition API详解(适用Vue2学习进入Vue3学习)
前端·javascript·vue.js
Dragon Wu1 小时前
TailwindCss 总结
前端·css·前端框架
bpmf_fff1 小时前
十、事件类型(鼠标事件、焦点.. 、键盘.. 、文本.. 、滚动..)、事件对象、事件流(事件捕获、事件冒泡、阻止冒泡和默认行为、事件委托)
前端·javascript
泰山小张只吃荷园1 小时前
期末Python复习-输入输出
java·前端·spring boot·python·spring cloud·docker·容器
悦涵仙子2 小时前
vueuse中的useTemplateRefsList
前端·javascript·vue.js
萧萧玉树2 小时前
分布式在线评测系统
前端·c++·后端·负载均衡
haima952 小时前
ubuntu安装chrome无法打开问题
前端·chrome