2015-05-05 49 views
0

我想分叉https://github.com/rackt/react-router私人回購,更新它,然後需要它在我自己的項目。叉和拉反應路由器

如果我運行

npm install react-router 

它不只是給我什麼在GitHub庫(它運行一些構建腳本和包好聽)。

模擬此工作流程的最佳方式是什麼?

理想我想...

  1. 叉從他們的反應回購路由器到我的私人回購
  2. 本地進行更改,然後推到我的私人回購
  3. NPM安裝(我的分叉版)在一些應用程序

如果我現在嘗試npm install {username}/react-router,它會安裝整個分叉的github回購(不是構建)並且不起作用。

謝謝!

回答

4
  1. github.com上有一個fork按鈕,所以這不是一個真正的問題。
  2. 仍然沒有問題。
  3. 這是很容易做到,但你需要告訴NPM從右側位置安裝:npm install <<your fork's URL>>

使用npm install react-router將無法​​正常工作(我顯然會這麼說),因爲npm已經知道了那個react-router包:它正好在npmjs.com上,指向the official version

如果您想要安裝自定義分支或甚至特定的提交,請從您需要的特定git URL安裝軟件包。

所以,你會使用特定的步驟是:

上github.com

  • 克隆做一次

    1. 叉項目到自己的帳戶,你自己複製到本地機器
    2. npm install在您的本地副本中,以便您擁有安裝用於建立react-router的所有設置

    然後改變的事情:

    不斷進行

    1. 修改你想要使用npm run build
    2. git的補充修改
    3. 構建反應路由器與這些更新的代碼,混帳提交和git推送你修改後的代碼和新的構建到你自己的github上。COM

    而且在你的項目要使用你的反應路由器的個人味道,你安裝你的副本:

    npm install username/react-router#yourmodifiedbranch

    (不要讓這個「主「,始終保持與上游主分支同步)

  • +0

    對不起,如果我不清楚。我在Github上分叉。我不是通過npm install react-router安裝的。我說我正在安裝{username}/react-router(我的叉名),所以它會更像... npm安裝我的用戶名/ react-router 這似乎是正確的安裝方式它。我也使用了https github url。 我沒有得到的是如何建立安裝後,我這樣做。如果你做了一個npm install react-router,它不會看它只是複製react-router repo。它做了一個特殊的構建過程。 – Jon

    +0

    如果我嘗試從fork運行npm run build,我必須在node_modules/react-router文件夾內部執行npm install以獲取所有依賴關係,但它仍然是錯誤。 – Jon

    +0

    你絕對不需要。在修改之前,您的fork將與官方發佈相同,包括package.json依賴和devDependencies。因此,'npm install yourgitrepo'的安裝方式應與正常反應路由器相同 –