克隆,分叉和合併存儲庫在GitHub上:初學者指南

該全面的指南可讓您介紹克隆,分叉和合併存儲庫的基本github操作。無論您是剛剛進行版本控制還是希望鞏固對GitHub工作流程的理解,本教程都將為您提供有效合作編碼項目所需的基本技能。

了解GitHub存儲庫

GitHub存儲庫充當項目的中央存儲位置,其中包含所有文件,文件夾和更改的完整歷史記錄。在進行特定操作之前,重要的是要了解遠程存儲庫(託管在GitHub上)和本地存儲庫(在您的計算機上)之間的差異。與GitHub合作通常涉及通過克隆或分叉創建存儲庫的本地副本,進行更改,然後通過合併整合這些更改。

遠程與本地存儲庫

GitHub上的存儲庫是遠程存儲庫。要在計算機上與它們合作,您需要創建本地副本,您可以通過克隆或叉車1來做到這一點。主要區別是:

  • 遠程存儲庫: 在GitHub的服務器上託管,合作者可以訪問
  • 本地存儲庫: 存在於計算機上,允許您在共享之前離線工作和測試更改

克隆存儲庫

克隆在您的計算機上創建存儲庫的本地副本。這是開始使用現有項目的最直接方法。

什麼是克隆?

克隆存儲庫時,您下載了存儲庫的完整副本,包括所有文件和提交歷史記錄。這可以與原始存儲庫建立連接,從而使您可以在具有寫入權限的情況下推回更改。

如何使用https克隆

  1. 找到克隆的存儲庫
    • 導航到您要克隆的GitHub存儲庫
    • 單擊文件列表上方的綠色“代碼”按鈕
    • 選擇HTTPS選項以獲取存儲庫URL
  2. 使用git克隆存儲庫
    • 打開您的終端或命令提示
    • 導航到您要存儲存儲庫的目錄
    • 鍵入以下命令:
  • 按Enter開始克隆
  1. 如有必要,請進行身份驗證
    • 對於私人存儲庫,您需要進行身份驗證
    • GitHub不再接受HTTPS的密碼身份驗證
    • 改用個人訪問令牌(PAT),您可以在GitHub設置中生成→開發人員設置→個人訪問令牌
  2. 開始使用克隆的存儲庫
    • 使用以下方式導航到克隆的存儲庫目錄
  • 現在您可以查看,編輯和使用文件

使用github桌面克隆

如果您喜歡圖形接口:

  1. 在GitHub桌面中,單擊“文件”→“克隆存儲庫”
  2. 選擇存儲庫來源:
    • 從您的GitHub存儲庫中選擇
    • 輸入任何存儲庫的URL
    • 瀏覽本地存儲庫
  3. 選擇要存儲存儲庫的本地路徑
  4. 單擊“克隆”以最終確定過程

分叉存儲庫

分叉正在您的GitHub帳戶中創建他人存儲庫的個人副本,這使您可以自由嘗試更改而不會影響原始項目。

什麼時候到叉子而不是克隆

您應該在以下情況下提供一個存儲庫

  • 您沒有寫入原始存儲庫的訪問權限
  • 您想為開源項目做出貢獻
  • 您想將某人的項目用作自己工作的起點

完整的分叉工作流程

  1. 分叉存儲庫
    • 導航到您要分叉的存儲庫
    • 單擊右上角的“叉子”按鈕
    • 等待幾秒鐘才能在您的帳戶中創建叉子
  2. 克隆您的分叉存儲庫
    • 分叉後,使用前面描述的方法將存儲庫克隆到本地計算機上
    • 這會創建叉子的本地副本,而不是原始存儲庫
  3. 進行更改並推到叉子
    • 對本地副本進行期望的更改
    • 提交您的更改
    • 將更改推向您的分叉存儲庫
  4. 創建拉動請求(可選)
    • 如果您想返回原始項目,請創建一個拉請請求
    • 這建議您更改原始存儲庫的所有者

了解關係

當您為存儲庫提供時:

  • 原始存儲庫稱為“上游存儲庫”
  • 您的副本是“分叉存儲庫”
  • 這些存儲庫是分開的,可以獨立開發
  • 您可以在需要時同步上游存儲庫的更改

與您的存儲庫合作

克隆或分配存儲庫後,您需要進行更改,提交它們並將其推回Github。

日常工作的基本git命令

  1. 檢查存儲庫狀態
  1. 為您的更改創建一個新分支
  2. 添加您更改的文件
  3. 或添加所有更改:
  4. 提交您的更改
  5. 將您的更改推向GitHub

合併存儲庫和分支機構

合併是GIT將一個分支或存儲庫的更改集成到另一個分支庫的方式。

了解GIT合併

GIT合併將委託的多個序列結合到一個統一的歷史中。在典型的情況下,合併用於結合兩個分支。合併時:

  1. git發現分支之間的共同基礎提交
  2. 它創建了一個新的“合併提交”,將更改結合在一起
  3. 此合併提交有兩個父母提交(與常規提交不同)

如何合併分支機構

  1. 結帳目標分支
  2. 確保您的分支是最新的
  3. 合併源分支
  4. 處理任何合併衝突
    • 如果Git遇到衝突的變化,它將標記在受影響的文件中
    • 編輯這些文件以解決衝突
    • 解決後,添加文件並提交合併

創建和管理拉力請求

拉力請求是從叉子回到原始存儲庫的主要方法。

創建拉力請求

  1. 將您的更改推向叉子
  2. 導航到GitHub上的原始存儲庫
  3. 單擊“拉請請求”,然後單擊“新拉請求”
  4. 選擇基本存儲庫/分支和您的叉/分支
  5. 查看您的更改並創建拉動請求
    • 添加標題和描述
    • 解釋您所做的更改以及為什麼

合併拉的請求

如果您擁有存儲庫或寫入訪問:

  1. 查看拉的請求
    • 檢查代碼更改
    • 如果適用進行測試
    • 考慮其他合作者的反饋
  2. 合併拉的請求
    • 在github上,導航到拉請求
    • 如果一切看起來不錯,請點擊“合併拉請請求”
    • 對於合併隊列的存儲庫,您可以單擊“準備時合併”

最佳實踐和技巧

工作流建議

  1. 始終為新功能創建分支機構
    • 保持主要分支清潔和穩定
    • 為新開發創建功能分支
  2. 拉力之前
    • 始終在推動自己之前進行最新更改
    • 這減少了合併衝突
  3. 寫清晰的提交消息
    • 使用描述性消息來解釋為什麼進行更改
    • 遵循簡短標題的約定,如果需要的話

避免的常見陷阱

  1. 直接在主分支上工作
    • 這可能引起衝突和混亂
    • 始終為新工作創建功能分支
  2. 不定期更新叉子
    • 如果原始存儲庫更改,則您的叉子可能會過時
    • 了解如何將叉子與上游存儲庫同步
  3. 將大型二進製文件推到git
    • Git未針對二進製文件進行優化
    • 考慮大型二進製文件的git lfs(大文件存儲)

結論

在本指南中,我們介紹了Github上的克隆,分叉和合併存儲庫,這對於協作和版本控制至關重要。克隆創建本地副本,分叉允許獨立開發,並合併有效整合變化。拉請求有助於結構化貢獻。最佳實踐包括使用功能分支,保持存儲庫的更新以及編寫清晰的提交消息。通過遵循這些工作流程,開發人員可以有效協作,減少衝突並有效地管理代碼,從而確保項目開發的平穩和對開源或團隊項目的貢獻。


Nikhil是Marktechpost的實習顧問。他正在哈拉格布爾印度技術學院攻讀材料的綜合材料綜合學位。 Nikhil是AI/ML愛好者,他一直在研究生物材料和生物醫學科學等領域的應用。他在材料科學方面具有強大的背景,他正在探索新的進步並創造了貢獻的機會。

Source link

Scroll to Top