分叉和拉动 React-Router

Fork and Pull React-Router

我想 fork https://github.com/rackt/react-router 到一个私人仓库,更新它,然后在我自己的项目中需要它。

如果我运行

npm install react-router

它不只是给我 github 存储库中的内容(它 运行 提供了一些构建脚本并将其很好地打包)。

模拟此工作流程的最佳方式是什么?

理想情况下我想...

  1. 将 react-router 从他们的 repo 分叉到我的私有 repo
  2. 在本地进行更改并推送到我的私人仓库
  3. 在某些应用程序中安装 npm(我的分叉版本)

如果我现在尝试 npm install {username}/react-router,它会安装整个分叉的 github 存储库(未构建)并且不起作用。

谢谢!

  1. github.com 上有一个叉子按钮,所以这不是真正的问题。
  2. 仍然不是问题。
  3. 这很容易完成,但您需要告诉 npm 从正确的位置安装:npm install <<your fork's URL>>

使用 npm install react-router 是行不通的(我会这么说),因为 npm 已经知道 react-router 包:它就在 npmjs.com 上,指向 the official version.

如果您想安装自定义分支甚至特定提交,请从您需要的特定 git URL 安装软件包。

所以您要使用的具体步骤是:

完成一次

  1. 在 github.com
  2. 上将项目分叉到您自己的帐户
  3. 将您自己的副本克隆到您的本地计算机
  4. npm install 在您的本地副本中,因此您已经安装了构建 react-router
  5. 所需的一切

然后要改变的东西:

不断

  1. 修改所有你想修改的代码
  2. 使用 npm run build
  3. 使用这些更新构建 react-router
  4. git 添加,git 提交,然后 git 将修改后的代码和新构建推送到 github.com
  5. 上你自己的分支

并且在您想要使用您个人风格的 react-router 的项目中,您将安装您的副本:

npm install username/react-router#yourmodifiedbranch

(不要做这个"master",始终保持与上游主分支同步)

您需要 运行 在您的 fork 中构建 react-router 的步骤,然后 运行 npm publish 来自 build/ 目录,而不是根目录。

npm install
npm run build
cd build/
npm publish --access=public

这是发布到 npm 的内容:https://github.com/rackt/react-router/tree/master/build