用戶可以很方便的從別的倉庫中複製一份代碼(Fork)到自己的名下。但是有一個不足是 GitHub 並不提供自動更新功能,那麼此時就需要我們自己手動更新這個 Fork 倉庫代碼。
具體步驟
** 1、安裝 GitHub客戶端
或者 Git
。**
** 2、clone 需要更新的 Fork 分支到本地 **
1 |
git clone [email protected]:yourname/repos.git <yourfolder> |
** 3、將源分支添加到該倉庫的遠程分支中 **
1 |
git remote add upstream [email protected]:author/repos.git |
此時可以使用 git remote -v
查看遠程分支列表,結果如下:
1 2 3 4 |
upstream [email protected]:author/repos.git (fetch) upstream [email protected]:author/repos.git (push) origin [email protected]:yourname/repos.git (fetch) origin [email protected]:yourname/repos.git (push) |
** 4、fetch 源倉庫代碼的最新版本到本地 **
1 |
git fetch upstream #這裏的`upstream`是上面從源分支添加到遠程分支的分支名 |
這裏是從上游倉庫 fetch 分支和提交點,提交給本地 master,並會被存儲在一個本地分支 upstream/master
。
** 5、合併兩個版本的代碼 **
1 |
git merge upstream/master |
這裏把 upstream/master
分支合併到本地 master 上,這樣就完成了同步,並且不會丟掉本地修改的內容。
** 6、更新到 GitHub 的 fork 上 **
1 |
git push origin master |
只用 GitHub,不用命令行操作步驟
這裏看到源項目已經領先我 Fork 的項目 84 個 commit 了,所以首先點擊圖中的 Pull request
:
由於這裏沒有修改,所以這裏是空的,下面點擊圖中的 switching to base
:
下面點擊 Create Pull request
:
這裏給這個 pull request 取一個名字:
然後點擊 Merge,最後 confirm 即可: