为什么git pull origin branchA:branchA无法工作并拉动原点branchA可以工作吗?

时间:2015-11-10 06:38:48

标签: git

我的git行动如下:

git pull origin mybranch1.3.3:mybranch1.3.3 ------>它拒绝并告诉我mo-fast-forwrd

git pull origin mybranch1.3.3 -------->效果很好。

有什么区别?不是最后一个“mybranch1.3.3”意味着我的本地分支?

springdeiMac:myApp qiushuitian$ git pull origin mybranch1.3.3:mybranch1.3.3
remote: Counting objects: 196, done.
remote: Compressing objects: 100% (94/94), done.
remote: Total 95 (delta 61), reused 0 (delta 0)
Unpacking objects: 100% (95/95), done.
From 192.168.1.39:myApp
 ! [rejected]        mybranch1.3.3   -> mybranch1.3.3  (non-fast-forward)
   a1a652f..3fd1572  mybranch1.3.3   -> origin/mybranch1.3.3
springdeiMac:myApp qiushuitian$ git pull origin mybranch1.3.3
From 192.168.1.39:myApp
 * branch            mybranch1.3.3   -> FETCH_HEAD

1 个答案:

答案 0 :(得分:2)

这是 git pull 语法

  

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

其中optionsrepositoryrefspec是可选参数,但您必须将它们提供给git命令,因为建议使用它,否则默认行为将由{{3 }}

  

人们经常使用git pull而不给出任何参数。传统上,这相当于说git pull origin

在第一个命令中使用了GIT Ducumentation

所以在git pull origin mybranch1.3.3:mybranch1.3.3 LHS 是您的<src> RHS :< / strong>是您的<dst>。要忽略此错误,您可以在 Refspec

中使用+

正如 Git 所说

  

refspec的格式为optional +,后跟   <src>:<dst>,其中<src>是参考文献的模式   远程端和<dst>是写入这些引用的地方   本地。 +告诉Git更新引用,即使它不是a   快进。

是的,第二个命令mybranch1.3.3是您的本地分支。此命令表示从originmerge获取数据到您当地的mybranch1.3.3