你或許已經(jīng) fork 一個(gè)項(xiàng)目為了提交更改向 upstream 或原始倉(cāng)庫(kù)。這種情況下,很好的實(shí)現(xiàn)了將 upstream 倉(cāng)庫(kù)定期同步到你的 fork。要做到這一點(diǎn),你需要在命令行中使用 Git。你可以使用你剛剛 fork 的 octocat/Spoon-Knife 倉(cāng)庫(kù)去練習(xí)設(shè)置 upstream 倉(cāng)庫(kù)。
你首先應(yīng)該 安裝 Git,如果你還沒有。也不要忘記 通過(guò) Git 驗(yàn)證 GitHub。
現(xiàn)在,你已經(jīng)成功 fork Spoon-Knife 倉(cāng)庫(kù),但在你自己的計(jì)算機(jī)上并沒有這個(gè)倉(cāng)庫(kù)的文件。讓我們克隆你 Fork 的代碼到你本地的計(jì)算機(jī)上。
1、在 GitHub 上,定位到你 fork 的 Spoon-Knife 倉(cāng)庫(kù)。
2、在你 fork 的倉(cāng)庫(kù)頁(yè)面的右側(cè)邊欄,點(diǎn)擊復(fù)制圖標(biāo)復(fù)制你 fork 的 URL。
http://wiki.jikexueyuan.com/project/github-basics/images/fork-a-repo/clone-repo-clone-url-button.png" alt="復(fù)制圖標(biāo)復(fù)制你 fork 的 URL" />
3、打開 Terminal 命令(針對(duì)蘋果系統(tǒng)用戶)或者命令提示行(針對(duì) Windows 和 Linux 用戶)。
4、輸入 git clone
,然后粘貼在步驟 2 復(fù)制的 URL。它看起來(lái)就像如下所示,用你 GitHub 的用戶名代替 YOUR-USERNAME
:
$ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
5、按下 回車鍵 ,你的本地克隆就創(chuàng)建了。
$ git clone https://github.com/YOUR-USERNAME/Spoon-Knife
Cloning into `Spoon-Knife`...
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (8/8), done.
remove: Total 10 (delta 1), reused 10 (delta 1)
Unpacking objects: 100% (10/10), done.
現(xiàn)在,你已經(jīng)有了針對(duì)你 fork 的 Spoon-Knife 倉(cāng)庫(kù)的本地克隆代碼!
當(dāng)你 fork 一個(gè)項(xiàng)目是為了提出更改這個(gè)原始的倉(cāng)庫(kù),你可以配置 Git 將原始的或者 upstream 的變化更改到你本地。
1、在 GitHub 上,定位到 octocat/Spoon-Knife 倉(cāng)庫(kù)。
2、在這個(gè)倉(cāng)庫(kù)頁(yè)面的右側(cè)邊欄,點(diǎn)擊復(fù)制圖標(biāo)復(fù)制這個(gè)倉(cāng)庫(kù)的 URL。
http://wiki.jikexueyuan.com/project/github-basics/images/fork-a-repo/clone-repo-clone-url-button.png" alt="復(fù)制圖標(biāo)復(fù)制你 fork 的 URL" />
3、打開 Terminal 命令(針對(duì) Mac 用戶)或提示命令行(Windows 和 Linux 用戶)。
4、更改到你在步驟 2(創(chuàng)建一個(gè)本地)創(chuàng)建的你的 fork 的本地的目錄。
cd
。ls
,列出當(dāng)前目錄的文件和文件夾。cd
目錄名”進(jìn)入你輸入的目錄下。cd ..
回到上一目錄。5、輸入 git remove -v
,按下回車鍵,你將會(huì)看到你的 fork 當(dāng)前配置的遠(yuǎn)程倉(cāng)庫(kù):
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
6、輸入 git remote add upstream
,然后粘貼你在步驟 2 復(fù)制的 URL 并按下回車鍵。它看起來(lái)如下所示:
$ git remote add upstream https://github.com/octocat/Spoon-Knife.git
7、驗(yàn)證你 fork 里新指明的這個(gè) upstream 倉(cāng)庫(kù),再次輸入 git remote -v
。你將會(huì)看到你 fork 的 URL 作為原始的地址,而原始的倉(cāng)庫(kù)的 URL 作為 upstream。
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
現(xiàn)在,你可以保持你的 fork 與 upstream 的倉(cāng)庫(kù)的同步,利用幾個(gè) Git 命令。想知道更多信息,請(qǐng)參閱 Syncing a fork。