zoukankan      html  css  js  c++  java
  • 如何为React提交pull request

      这个指南在react 官方文档中是有的,如果感兴趣请移步官方,react作为开源浪潮中前端最为成功和流行的项目,它对pull request的指南也是值得学习的。

    1. 提交pull request之前,确保:
      1. fork https://github.com/facebook/react 这个仓库,以main分支为基础创建分支
      2. 在仓库的根目录下执行yarn
      3. 如果修复的bug或者添加了code,而这些内容需要添加测试,请添加测试
      4. 确保通过测试(yarn test)。提示:在开发环境下,yarn test --watch TestName很有用,(目前还没试用)。
      5. 生产环境下,请运行 yarn test --prod来进行测试
      6. 如果需要调试,请执行 yarn debug-test --watch TestName,,打开 chrome://inspect, 之后再打开 “审查”。
      7. 试用 yarn prettier来格式化代码
      8. yarn lint 来校验代码,提示: 执行yarn lintc去只检查更改过的代码,所以速度会比yarn lint 更快。
      9. 运行Flow来进行类型检查 yarn flow
      10. 请签订贡献者许可证协议: Contributor License Agreement
    2. 开发机器必要条件
      1. Node, Yarn
      2. JDK 
      3. gcc
      4. git 
    3. 开发工作流程
      1. 克隆React项目之后,执行yarn来获取依赖,之后你可以执行以下命令:
        1. yarn lint 检查代码风格
        2. yarn lintc和yarn lint 差不多,但是运行更快,因为知识检查了分支中的不同的文件
        3. yarn test 运行完整的测试 
        4. yarn test --watch 运行交互式的测试监听器
        5. yarn test --prod 在生产环境下运行测试
        6. yarn test <pattern>匹配文件名,运行响应测试
        7. yarn debug-test 和yarn test差不多,不过多了个调试器,可以代开chrome://inspect 并审查。
        8. yarn flow运行Flow进行类型检查
        9. yarn build新建涉及所有包的build文件夹
        10. yarn build react/index, react-dom/index --type=UMD生成只有React和ReactDOM的UMD版本
      2. 建议:
        1. 先运行yarn test确保项目没有引入新的问题
        2. 运行 yarn build,这会在build文件夹中生成预先构建的bundle,还会在build/packages中生成npm包
        3. 最简单的一个快速探查你做出的修改的一个方法是:先运行yarn build react/index, react-dom/index -type=UMD,之后再打开fixtures/packaging/babel-standalone/dev.html,这个文件已经使用build文件夹中的react.development.js了,所以能看你的修改是否有问题。
        4. 如果你想测试你对已有 React 项目做出的更改,你可以复制 build/node_modules/react/umd/react.development.js 和 build/node_modules/react-dom/umd/react-dom.development.js 或其它构建版本,放入你的应用中并使用这些构建版本而非稳定版。
        5. 如果你的项目用 npm,你可以从依赖中删去 react 和 react-dom,使用 yarn link 将其指向本地文件夹的 build 目录。请注意,**当请在构建时,传递 --type=NODE,而不是 --type=UMD。同时,你还需要构建 scheduler 的 package:
          1. cd ~/path_to_your_react_clone/
            yarn build react/index,react/jsx,react-dom/index,scheduler --type=NODE
            
            cd build/node_modules/react
            yarn link
            cd build/node_modules/react-dom
            yarn link
            
            cd ~/path/to/your/project
            yarn link react react-dom
    4. 未完待续
    晚来一阵风兼雨
  • 相关阅读:
    Codeforces Round 269 (Div. 2)
    Codeforces Round 268 (Div. 2)
    杜教筛
    Codeforces Round 267(Div. 2)
    Codeforces Round 548 (Div. 2)
    Educational Codeforces Round 62 (Rated for Div. 2)
    数据结构编程实验——chapter9-应用二叉树的基本概念编程
    数据结构编程实验——chapter8-采用树结构的非线性表编程
    组合数学及其应用——polya计数
    《A First Course in Abstract Algebra with Applications》-chaper1-数论-棣莫弗定理
  • 原文地址:https://www.cnblogs.com/dejunwang/p/15328086.html
Copyright © 2011-2022 走看看