簡體   English   中英

“ origin / master”是指遠程存儲庫中的遠程分支,還是本地存儲庫中的遠程跟蹤分支?

[英]Does `origin/master` refer to a remote branch in a remote repository, or a remote-tracking branch in a local repository?

使用Git的版本控制

默認情況下,每個新克隆都通過一個稱為“ origin”的遠程維護鏈接回到其父存儲庫。 ... Git還使用默認的獲取refspec配置默認的原始遠程服務器:

 fetch = +refs/heads/*:refs/remotes/origin/* 

建立此refspec預期您希望通過從原始存儲庫中獲取更改來繼續更新本地存儲庫。 在這種情況下,遠程存儲庫的分支可以在克隆中以origin/前綴的分支名稱上使用,例如origin/master, origin/devorigin/maint

上面似乎說origin/master是指遠程存儲庫中的遠程分支。

如果由於克隆而使備用歷史記錄位於不同的存儲庫中,那么必須通過獲取操作將遠程分支帶入您的存儲庫中。 您可以通過直接git fetch命令或作為git pull命令的一部分執行操作; 沒關系。 無論哪種情況,提取都將遠程提交(這里為C和D)提交到您的存儲庫中。 引入帶有提交C和D的備用歷史記錄絕對不會改變以X和Y表示的歷史記錄; 這兩個備用歷史記錄現在同時存在於您的存儲庫中,並形成一個更復雜的圖形。 您的歷史記錄由master分支表示,遠程歷史記錄由origin/master遠程跟蹤分支表示。

在此處輸入圖片說明

上面的內容似乎表明origin/master指的是本地存儲庫中的遠程跟蹤分支。

那么origin/master引用是指遠程存儲庫中的遠程分支,還是本地存儲庫中的遠程跟蹤分支? 什么時候指的是哪個?

您對第一段的評估對我來說似乎是錯誤的: origin/master 確實引用了您本地的遠程跟蹤分支。

表達式“ 通過克隆名稱...可在克隆中使用遠程存儲庫的分支”表示。 這些是遠程分支的本地副本,僅在您fetch時更新,但在任何時候都可以本地訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM