如何将尚未合并到master中的远程分支拉入本地分支?

时间:2015-07-30 06:04:59

标签: git pull

有一个远程分支,我想从该分支拉到我的一个本地分支。我该怎么做?

这有什么问题?

git checkout myLocalBranch
git pull remoteBranch myLocalBranch

2 个答案:

答案 0 :(得分:0)

git pull用于将当前分支更新为远程上的最新版本。你不能只把一个分支拉到另一个分支。这叫做合并!

所以你必须这样做:

git fetch origin
git merge origin/remoteBranch

并解决合并冲突(如果有)。这将导致您要求的状态:您的本地分支将远程分支放在最上面。

正如@eckes在评论中所指出的那样(谢谢!),你应首先运行git fetch origin以告诉git remoteBranch

答案 1 :(得分:0)

首先让我们看看你的命令可以改进的地方。

hive (default)> create external table Addresses (
              >   name string,
              >   street string,
              >   city string,
              >   state string,
              >   zip int
              > ) stored as orc tblproperties ("orc.compress"="SNAPPY")
              > LOCATION '/user/abc/address_orc';
FAILED: ParseException line 8:0 missing EOF at 'LOCATION' near ')'
hive (default)>

用于切换到名为myLocalBranch的现有分支。如果myLocalBranch不存在则会导致错误。

git checkout myLocalBranch

不能用于任意从任何分支拉到任何分支。 pull命令的语法如下,其中some-remote通常是“origin”或任何其他已配置的远程存储库。

git pull remoteBranch myLocalBranch

将拉出myLocalBranch正在跟踪的遥控器上的分支。

来你的问题是从远程拉出一个特定的分支。因此,您需要创建一个本地分支,指定远程存储库和必须跟踪的远程分支。

git pull <some-remote> myLocalBranch

将创建一个名为myLocalBranch的新本地分支,该分支将跟踪“origin”存储库的remoteBranch。现在您已切换到myLocalBranch并已配置分支。做一个git checkout -b myLocalBranch origin/remoteBranch 从远程开始工作。