git - 怎麼把自己fork別人的倉庫中的程式碼更新到最新版本?
三叔
三叔 2017-06-20 10:06:00
0
5
1254

我在Github上fork了別人一個項目,然後修改之後按照正常流程提交PR,並且對方merged了。

我現在又需要對該專案進行貢獻程式碼,但是發現對方的專案倉庫也有別人更新了新程式碼上去,我怎麼讓我自己倉庫中fork的這個專案程式碼也同步到和對方倉庫一樣的最新版本程式碼,然後我再貢獻?

三叔
三叔

全部回覆(5)
世界只因有你

首先 把別人的倉庫加到你的上游遠程,通常命名為 upstream。操作一次就可以了。

git remote add upstream  原作者仓库地址

此時再用 git remote -v 就可以看到一個origin是你的,另外一個upstream是原作者的。

其次 更新程式碼

使用git fetch upstream 拉去原作者的倉庫更新。

使用git checkout master 切換到自己的master

使用 git merge upstream/master, merge或rebase到你的master

为情所困

如果從上次被merge後,沒有在修改你的倉庫中fork的程式碼,那麼我建議直接把你的倉庫中這個項目刪掉,然後重新fork.

我個人不太喜歡樓上說的merge的方式 -- merge方式的歷史記錄不太好看。

如果不想刪除重新fork,可以直接:

git checkout master
git remote add upstream 别人的代码库地址
git fetch upstream/master
git reset --hard upstream/master
刘奇

先加入你 fork 的函式庫的位址

git remote add FORK-sync https://github.com/xxx/yyy.git
git remote -v

能看到類似的

FORK-sync    https://github.com/xxx/yyy.git (fetch)
FORK-sync    https://github.com/xxx/yyy.git (push)
origin    git@github.xxx/born-1.git (fetch)
origin    git@github.xxx/born-1.git (push)

接著接受所 fork 函式庫的內容

git fetch FORK-sync

合併

git merge FORK-sync/master

再推送到你的遠端倉庫就行了

git push
Peter_Zhu

雷雷

仅有的幸福

這些圖文教學早就有了。 http://blog.csdn.net/qq133247...

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板