TortoiseGit:如何从新的远程分支获取代码?

4

我正在使用 TortoiseGit 并拥有一个本地存储库,已经配置了一个远程存储库以便获取和推送代码。

现在我在远程存储库中添加了一个新分支。然后,在我的本地存储库中,我执行了从远程存储库中“获取(fetch)”的操作。期望的结果是新分支被获取并可以进行合并。

但是反而 TortoiseGit 忽略了这个分支。 我尝试通过 Windows 资源管理器 > 右键 > TortoiseGit > 获取(fetch) 来进行操作。在那里,我无法选择新分支,所以当我执行获取(fetch)时,新分支并没有被获取。新分支没有被跟踪。

如何让 TortoiseGit 识别新的远程分支?我只能在设置中添加和删除远程,并不能配置引用规范(ref-specs)?


你尝试在哪个对话框中进行提取?远程分支是否为跟踪分支? - MrTux
我的猜测是你希望创建一个与远程分支同名的新分支。fetch 的结果将在 remote/branchname 中。 - Bartlomiej Lewandowski
我不希望创建一个新的本地分支。我期望在执行fetch后看到一个新的远程引用。但事实并非如此。 - nemoo
@nemoo 我已经使用TortoiseGit很多年了,从来没有遇到过这种情况,但现在我有一个存储库有很多分支,但无论我做什么,我都不能设置起点并下载所有分支;我只得到develop。奇怪...你做了什么?顺便说一下,我发送后将检查一个新的克隆...但仍然很奇怪... - 9swampy
FWIW2...新的存储库/克隆工作了。关闭它,再打开 :) - 9swampy
3个回答

8
假设您的远程设置为“origin”。现在,当您执行 git fetch 时,“origin”下的所有分支都会被获取到本地计算机。 要获取一个分支,不需要选择指定的分支。

0

你可能只想像我一样切换到新分支。要做到这一点,通过Windows资源管理器>右键单击>TortoiseGit>Switch/Checkout。然后选择“Switch To”分支,确保选项正确选择,例如“Create New Branch”,“Overwrite working tree changes(force)”,和/或其他适用的选项。有了这些,我能够切换到新分支,而无需通过Git Sync窗口。


0

我之前遇到过类似的问题,可能是因为我使用了深度为1的特定分支克隆了一个仓库,所以本地仓库历史记录中没有其他分支的引用。 解决方法是重新克隆该仓库,不使用深度为1的选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接