可以从远程存储库的远程跟踪分支获取Git吗?

时间:2015-12-31 17:21:01

标签: git

通常,git fetch的来源是远程存储库的ref/heads/*

是否不允许从远程跟踪分支中获取,即远程存储库的ref/remotes/*

2 个答案:

答案 0 :(得分:6)

当然!

“正常”提取是git fetch origin refs/heads/*:refs/remotes/origin/*

这告诉当前存储库连接到origin,获取refs/heads/*列表并将引用存储在本地refs/remotes/origin/中。

你可以调整一下以获得origin:refs/remotes/*,如下所示: git fetch origin refs/remotes/*:refs/remotes/origin/*

值得注意的是,这方面的用处取决于您对所谈论的遥控器的了解:您获得了在您引用的遥控器中配置的远程名称,但是您没有获得有关该遥控器的详细信息远程。换句话说,你最终可能会看到一个新的条目refs/remotes/origin/origin/master,但除非你知道origin/origin究竟是什么,否则究竟是什么跟踪将是一个谜。

答案 1 :(得分:0)

  

是否不允许从远程跟踪分支获取远程存储库的ref / remotes / *?

是的,你可以。

Git并不关心来源的来源。你可以获取,拉动和放大合并形成不同的分支和起源。

考虑一下:

你有一个大项目,你有几个分包商在同一个项目上工作,但每个分包商都在不同的路径上改变代码。

完成工作后,您需要将其全部合并到一个大项目中。

如何吗

git merge origin1/A origin2/B origin3/3 ... originN/N

同样,git并不关心内容的来源。