簡體   English   中英

如何將尚未合並到master中的遠程分支拉到本地分支中?

[英]How to take a pull of a remote branch that has not been merged into master into a local branch?

有一個遠程分支,我想從那個分支拉到我的一個本地分支。 我怎么做?

這有什么問題?

git checkout myLocalBranch
git pull remoteBranch myLocalBranch

git pull用於將您當前的分支更新為遠程服務器上的最新版本。 您不能只是將一個分支拉入另一個分支。 這就是所謂的合並!

因此,您必須這樣做:

git fetch origin
git merge origin/remoteBranch

並解決合並沖突(如果有)。 這將導致出現您要求的狀態:您的本地分支將在頂部具有遠程分支。

正如@eckes在評論中指出的(謝謝!),您應該首先運行git fetch origin ,以向git講述remoteBranch

首先讓我們看看您的命令可以改進的地方。

git checkout myLocalBranch

用於切換到名為myLocalBranch的現有分支。 如果myLocalBranch不存在,則將導致錯誤。

git pull remoteBranch myLocalBranch

不能用於任意從任何分支拉到任何分支。 以下是pull命令的語法,其中some-remote通常是“ origin”或任何其他已配置的遠程存儲庫。

git pull <some-remote> myLocalBranch

會將分支拉到myLocalBranch正在跟蹤的遠程站點上。


出現問題是要從遠程拉特定分支。 因此,您需要創建一個本地分支,指定遠程存儲庫和必須跟蹤的遠程分支。

git checkout -b myLocalBranch origin/remoteBranch

將創建一個名為myLocalBranch的新本地分支,該分支將跟蹤“原始”存儲庫的remoteBranch。 現在,您已切換到myLocalBranch,並且分支已配置。 進行git pull ,從遠程拉動您的工作。

暫無
暫無

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

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