git pull
和git pull origin master
有什么区别?
如果我不在master
的分支上,这两个命令会得到不同的结果吗?
答案 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使本地分支跟踪远程分支。
git branch --track branch_name origin/branch_name
答案 2 :(得分:2)
首先,让我们了解git pull
是什么:
git pull 命令用于从以下位置获取和下载内容:
远程存储库,并立即将本地存储库更新为
匹配该内容。 git pull
命令是以下命令的组合
git fetch
和git merge
。 git 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。
所以
如果您的分支设置为“ master”,则git pull和git pull origin master将执行相同的操作。
如果您的分支设置为“ master”,则Git pull和git pull的起源-其他分支将有所不同
如果您的分支设置为“其他分支”,则Git pull和git pull的原始主机将不同