获取使用gitflow创建的分支?

时间:2016-03-15 23:26:24

标签: git git-flow

我使用SourceTree和git flow创建了一个功能分支(按下按钮)。然后我尝试将这些分支克隆到repo的另一个本地副本,但我不能再在本地获取这些分支。例如,如果我发出:

git branch -v -a,我看到了:

gmmo@DESKTOP-GIMBJM0 MINGW64 /C/Dogwood (develop)
$ git branch -v -a
* develop                         de5e2f2 Updated to Build 4.1.6.37
  master                          0aa9613 Release 4.1.6.37
  remotes/origin/HEAD             -> origin/master
  remotes/origin/develop          de5e2f2 Updated to Build 4.1.6.37
  remotes/origin/feature/cleanups ef035e9 Added alert dialog
  remotes/origin/master           0aa9613 Release 4.1.6.37

所以remotes / *是由git flow创建的。我只手动创建了开发和掌握

但是如何轻松地将所有遥控器克隆回本地驱动器?

我试过

git fetch

但不确定它做了什么,因为如果我发出

git branch

我只在驱动器上看到两个主要分支。

* develop
  master
gmmo@DESKTOP-GIMBJM0 MINGW64 /C/Dogwood (develop)

有没有一种简单的方法来克隆所有这些分支,而无需重新克隆整个仓库?

THX!

1 个答案:

答案 0 :(得分:2)

如果您想在本地获取远程分支,则需要检查它。 当你这样做

git checkout feature/cleanups

git应该足够聪明,能够识别它是一个远程存储库,并自动创建跟踪远程版本的分支的本地副本。如果这不起作用,你可能运行旧版本的git,我建议尝试更新。适用于旧版本的替代方案是

git checkout --track origin/feature/cleanups

您也可以使用SourceTree。找到并双击Remotes>下的分支。起源。它会创建一个用于检出新分支的弹出窗口;默认值应该没问题。

那就是说,你描述的行为有点奇怪。克隆本地存储库时,应获得精确副本,包括功能分支。你说你试图克隆这些分支"。您克隆存储库,而不是分支。您可以克隆存储库的副本,只获得一个带有--single-branch选项的分支(请参阅docs),但此用途有限。