TortoiseGit克隆远程分支

时间:2012-10-03 13:39:24

标签: git tortoisegit

我正在尝试与Git达成协议,因为我最近开始使用它(长时间的Subversion用户),我找不到使用TortoiseGit克隆远程分支的方法。

我已经创建了一个本地分支,我将其推送到GitHub,但是当我尝试克隆(checkout)这个远程分支时,我找不到任何方法。

我该怎么做?

5 个答案:

答案 0 :(得分:16)

如linquize所述,TortoiseGit并未直接提供此功能。如果你真的想要使用它,你可以:

  • 克隆分支所属的存储库(右键单击菜单 - > Git Clone ...)。这也将检查由clone创建的工作副本到HEAD

TortoiseGit clone window

  • 将工作副本从HEAD切换到所需的分支/标记(右键菜单 - > TortoiseGit - >切换/结帐)

TortoiseGit switch window

这比命令行要花费的时间要长一些,因为初始克隆命令意味着要检查头,然后你必须切换回你想要的分支/标签。

答案 1 :(得分:8)

(这与TortoiseGit v1.8.3.0相同。)

做一个" Git - > Git Sync"首先在TortoiseGit上下文菜单中。 (注意:您可能必须在右键单击时按住 Shift ,具体取决于您在上下文菜单中设置Git Sync的方式。)

左下角会有一个名为" Remote Update"的按钮。这样做,它将删除本地存储库中不存在的所有新远程分支。

Remote Update

之后,你应该可以做" Git - > Git Checkout"正常情况下,您想要的分支将显示在列表中。

我应该注意,可以使用相同的过程向TortoiseGit通知已在远程存储库中创建的新分支,无论您是否最初创建它们。

答案 2 :(得分:7)

它可以在Git克隆窗口中使用: enter image description here

答案 3 :(得分:1)

不幸的是,目前的TortoiseGit(TortoiseGit 1.7.13.0)无法克隆特定的分支。您可以询问功能请求。

解决方法:

  1. 使用手动Git命令,例如:git clone --recursive --branch 2.x-1.0
  2. 使用其他Git GUI,例如SmartGit
  3. 另一种方法是克隆所有分支然后删除不需要的分支,但即使这不是一个好的解决方案,特别是如果你有许多分支有许多标签(和不同的文件名),但这是迄今为止的解决方法,直到TortoiseGit提供它。我选择使用命令行手动克隆分支。这个问题只发生在Windows用户身上,因为Linux的Git版本已经提供了--branch选项。

答案 4 :(得分:0)

关于此的更新:

如果你只需要一个特定的分支,你可以直接在SVN结账,如今。复制分支的树URL,即https://github.com/USERNAME/REPONAME/tree/BRANCHNAME,并将tree替换为branches,以便获得https://github.com/USERNAME/REPONAME/branches/BRANCHNAME

此URL可用于签出特定分支。