首頁 > 科技週邊 > IT業界 > 快速提示:通過命令行同步github叉

快速提示:通過命令行同步github叉

Christopher Nolan
發布: 2025-02-19 09:41:12
原創
523 人瀏覽過

保持GitHub分叉倉庫同步,確保你的分叉倉庫與原始倉庫的最新更改保持一致至關重要。這可以通過將原始倉庫的更改拉取到本地倉庫,然後推送到分叉倉庫來實現。

更新分叉倉庫的過程包括:分叉倉庫、克隆分叉倉庫、鏈接到原始倉庫、從原始倉庫拉取更改以及將更改推送到分叉倉庫。此過程假設你已經分叉了倉庫並在本地機器上克隆了分叉倉庫。

在處理分叉倉庫時,最好避免直接向分叉倉庫或本地倉庫的主分支提交更改。此分支應僅用於保存來自原始倉庫的更新代碼。所有更改都應在新的功能或錯誤分支中進行,並推送到分叉倉庫上同名的分支。

Quick Tip: Sync a GitHub Fork via the Command Line

要理解更新分叉倉庫的概念,首先必須了解為什麼這必要。

組織機構無法向每個潛在貢獻者授予其主倉庫的寫入權限,因此公眾只能查看原始倉庫。分叉是用戶可以創建的原始倉庫的副本。用戶對其自己的分叉擁有讀寫權限。

通常,編程是在本地機器(或虛擬機)上進行的,而不是直接在GitHub界面上進行,因此通常會創建分叉倉庫的克隆。

一旦貢獻者向本地副本提交了更改,就需要將其推送到GitHub上的分叉倉庫(由於擁有寫入權限,這是可能的)。然後,從分叉倉庫創建到原始倉庫的拉取請求。

保持你的分叉倉庫最新

當原始倉庫使用其他人的代碼更新後(在分叉創建後),這些新的提交不會自動出現在分叉倉庫中。必須首先將這些更改下載並合併到本地倉庫,然後將其推送到分叉倉庫。

出於歷史原因,在我們的本地倉庫中,我們將原始倉庫的遠程倉庫命名為upstream,將分叉倉庫命名為origin

理想情況下,你永遠不應該直接對分叉倉庫或本地倉庫的主分支進行任何提交。此分支必須僅用於保存來自upstream的更新代碼。所有更改都必須在新的功能或錯誤分支中進行,並推送到分叉倉庫上同名的分支。

因此,以下步驟有助於使用來自原始倉庫的最新提交更新分叉倉庫:

  • upstream的主分支拉取到本地倉庫的主分支
  • 從本地倉庫的主分支推送到分叉倉庫的主分支

這些步驟假設你已經分叉了倉庫並在本地機器上克隆了分叉倉庫。

為了演示,我們將使用GitHub上e-Cidadania的倉庫。

步驟1:分叉倉庫

要分叉倉庫,你需要點擊分叉按鈕(截圖的右上角)。

Quick Tip: Sync a GitHub Fork via the Command Line

步驟2:克隆你的分叉倉庫

要克隆你的分叉倉庫,你首先需要從下拉菜單中選擇協議(如下面的截圖所示)並複制鏈接。在本演示中,我們將選擇SSH協議:

Quick Tip: Sync a GitHub Fork via the Command Line

打開終端並運行以下命令:

git clone git@github.com:sdaityari/e-cidadania.git
登入後複製

步驟3:鏈接到原始倉庫

然後,你需要將你的本地倉庫鏈接到原始倉庫,以便能夠從原始倉庫拉取更改。這是通過添加upstream遠程倉庫來完成的。首先,從原始倉庫複製SSH鏈接,然後通過運行以下命令添加遠程倉庫:

git remote add upstream git@github.com:cidadania/e-cidadania.git
登入後複製

要驗證遠程倉庫是否已添加,請通過運行以下命令檢查遠程倉庫列表:

git remote -v
登入後複製

輸出應如下所示:

<code>origin  git@github.com:sdaityari/e-cidadania.git (fetch)
origin  git@github.com:sdaityari/e-cidadania.git (push)
upstream    git@github.com:cidadania/e-cidadania.git (fetch)
upstream    git@github.com:cidadania/e-cidadania.git (push)</code>
登入後複製

步驟4:從upstream(原始倉庫)拉取更改

當原始倉庫的主分支中有新的提交,而你的分叉倉庫中沒有這些提交時,你會在分叉倉庫的頁面上收到GitHub的消息。在截圖中,你可以看到一條消息,上面寫著“此分支落後於cidadania:master 36 次提交”:

Quick Tip: Sync a GitHub Fork via the Command Line

要將這些更改拉取到你的本地倉庫,請運行以下命令:

git pull upstream master
登入後複製

此命令會從upstream遠程倉庫更新你的主分支。

步驟5:將更改推送到origin(分叉倉庫)

要將這些來自原始倉庫的更新推送到分叉倉庫,只需運行以下命令:

git push origin master
登入後複製

要確認更改已更新,請再次訪問GitHub上的分叉倉庫頁面!

Quick Tip: Sync a GitHub Fork via the Command Line

消息“此分支與cidadania:master 保持一致”表明更改已添加到分叉倉庫的主分支。

關於通過命令行同步GitHub分叉倉庫的常見問題解答 (FAQs)

(此處省略FAQ部分,因為篇幅過長,且與偽原創目標不符。FAQ部分內容可以根據需要重新組織和改寫,但需保證信息完整且不改變原意。)

以上是快速提示:通過命令行同步github叉的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板