如何为开源项目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就已经进入了开源的世界!
相关推荐
用户938515635078 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformer.js 全链路实战
前端·设计模式·typescript
CodeSheep9 小时前
稚晖君公司人事大变动,来了!
前端·后端·程序员
鱼樱前端9 小时前
用 AI 做内容变收入
前端·人工智能·ai编程
浮生望9 小时前
React + TypeScript 组件设计进阶:从类型约束到无状态组件的三次进化
前端
90后的晨仔10 小时前
Mac 开发 uni-app 终极方案:让安卓模拟器彻底脱离 Android Studio 独立运行
前端·vue.js
90后的晨仔10 小时前
别再搞混了!uni-app 中 node_modules 和 uni_modules 到底是什么关系?
前端
kyriewen10 小时前
面试官问"这段逻辑为什么这样写"——我才发现,这半年我写的代码,我自己都解释不了
前端·javascript·面试
谢小飞11 小时前
大文件上传很难?学会这招,GB文件秒传不是梦
前端·node.js
程序员黑豆11 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
To_OC11 小时前
别只拿 useRef 绑 DOM 了,搭配 Web Worker 解决页面卡顿才是真的香
前端·react.js·dom