我很难理解 git-fetch 的细微差别。我知道做fetch
, 将远程 refs 提取到本地跟踪分支中。
不过我有几个问题:
本地跟踪分支可能不存在吗?如果是这样,它会自动创建吗?
如果我执行 a
fetch
并将非跟踪分支指定为目标会发生什么?git-fetch 的手册页指定:
git-fetch <options> <repository> <refspec>
我将如何使用 refspec 将远程 master 中的内容提取到其远程跟踪分支中?我相信如果我当前的 HEAD 在 master 上并且我运行,这可能是可能的
git fetch origin master
但是,我可以使用<+?src:dest>
refspec 来实现相同的目标吗?我认为这将有助于我更好地理解这些概念。
还有一个问题:
我的 .git/config 文件具有以下用于获取的行(仅显示相关行):
fetch = +refs/heads/*:refs/remotes/origin/*
有人可以解释一下这条线的确切含义吗?