如何为开源项目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就已经进入了开源的世界!
相关推荐
GISer_Jing1 小时前
前端面试通关:Cesium+Three+React优化+TypeScript实战+ECharts性能方案
前端·react.js·面试
落霞的思绪2 小时前
CSS复习
前端·css
咖啡の猫4 小时前
Shell脚本-for循环应用案例
前端·chrome
百万蹄蹄向前冲6 小时前
Trae分析Phaser.js游戏《洋葱头捡星星》
前端·游戏开发·trae
朝阳5817 小时前
在浏览器端使用 xml2js 遇到的报错及解决方法
前端
GIS之路7 小时前
GeoTools 读取影像元数据
前端
ssshooter8 小时前
VSCode 自带的 TS 版本可能跟项目TS 版本不一样
前端·面试·typescript
Jerry8 小时前
Jetpack Compose 中的状态
前端
dae bal9 小时前
关于RSA和AES加密
前端·vue.js
柳杉9 小时前
使用three.js搭建3d隧道监测-2
前端·javascript·数据可视化