我很担心
git fetch origin master
vs git fetch origin master:master
。
我知道首先会从存储库和指定的分支中获取。
第二个git fetch origin master:master
怎么办?
答案 0 :(得分:4)
您在这些示例中的变化称为refspec
。
在第一个示例中,您使用的是一个速记,指定要获取的源引用(master
),但未指定要更新的目标引用。默认行为将适用,通过典型设置意味着origin/master
将被更新。
第二个示例,您提供了一个来源(master
),然后是:
来将其与目的地,目标(也是master
)分开。这将尝试直接更新本地仓库的本地 master
分支 - 而不是origin/master
远程分支ref。它可能会失败(例如,如果本地仓库是默认配置中的非裸仓库,并且已签出master
。
如果您想使用显式refspec,但仍想更新远程引用,可以说
git fetch origin master:origin/master