“ git pull”和“ git pull origin master”有什么区别?

时间:2018-08-31 05:14:46

标签: git

git pullgit pull origin master有什么区别?

如果我不在master的分支上,这两个命令会得到不同的结果吗?

4 个答案:

答案 0 :(得分:8)

请记住,拉是获取和合并。

  • git pull origin master 从起源远程站点的master分支中提取提交(进入本地origin / master分支),然后合并origin /掌握您当前已签出的分支。

  • git pull 仅在您签出的分支正在跟踪上游分支时才起作用。例如,如果您签出的分支跟踪原始/母版,则git pull等效于git pull origin master

答案 1 :(得分:2)

Git拉= Git提取+ Git合并。

git pull origin master 假设您在本地/主服务器上,然后运行此命令,git将从原始/主服务器获取提交,然后将其合并到本地/主服务器。

git pull  这是将提交内容拖入跟踪远程分支的本地分支的简写。

这带来了一个问题,即如何使本地分支跟踪远程分支。

据我所知,有两种常见的实现方法:
1.首次按下时:     git push -u origin branch_name -u标志告诉git使本地分支跟踪远程分支。

  1. 为现有远程分支创建本地分支时: git branch --track branch_name origin/branch_name

答案 2 :(得分:2)

首先,让我们了解git pull是什么:

  • git pull 命令用于从以下位置获取和下载内容: 远程存储库,并立即将本地存储库更新为 匹配该内容。 git pull命令是以下命令的组合 git fetchgit mergegit pull将从以下位置下载内容 远程存储库。内容下载后,git merge将 将内容合并到本地存储库。新的合并提交将 创建并更新HEAD以指向新提交。

  • 现在我们知道git pull在做什么 git pull origin master,它只是获取master的副本 从原始存储库分支,并将其与当前存储库合并 您已签出的分支。

有关更多信息,请转到this link

答案 3 :(得分:1)

从文档中:

  

https://git-scm.com/docs/git-pull

git pull [<options>] [<repository> [<refspec>…​]]
     

git-pull-从另一个存储库或本地获取并与其集成   分支

     

...

     

和的默认值是从   由设置的当前分支的“远程”和“合并”配置   git-branch [1] --track。

所以

  1. 如果您的分支设置为“ master”,则git pull和git pull origin master将执行相同的操作。

  2. 如果您的分支设置为“ master”,则Git pull和git pull的起源-其他分支将有所不同

  3. 如果您的分支设置为“其他分支”,则Git pull和git pull的原始主机将不同