VS 2017团队资源管理器GIT“推送分支”灰色不可用

3

我在使用VS 2017团队资源管理器GIT时,发现“Push Branch”选项无法使用。 我从没有跟踪的远程分支创建了一个新的本地分支,然后尝试通过单击“Push Branch”创建具有相同名称的远程分支。为什么这个选项对我而言是灰色的呢?

3个回答

2
我把它放在这里,因为像我这样的人会再次搜索它,我通过进行分支Rebase解决了这个问题。在此之前,请提交您的更改。然后执行以下操作:

Rebase window

Result

可能是在您操作远程仓库设置后发生的。
另一种情况是我刚刚删除了所有原始内容并重新创建了它们。

enter image description here

另一个提示。请确保您始终拥有名称为“origin”的远程控制器,这是我在迁移我的项目时遇到的另一个问题。

2
我的远程仓库原来叫做其他名字。当我将其更改为origin后,我就能够推送更改了。 感谢您的帮助。 - Michael

2
使用以下命令将其中一个远程重命名为“origin”:

git remote rename [当前名称] origin

git remote rename your-remote-name-goes-here origin

那么你应该能够在Visual Studio中进行Push、Pull和Fetch操作。这些选项将不再是灰色的。


-2

通过VS直接将新创建的本地分支推送到VSTS git仓库的方法是在本地分支上直接点击推送分支按钮(无需手动在远程创建相同的分支)。

详细步骤如下:VS -> 团队资源管理器 -> 分支 -> 右键单击本地分支 -> 推送分支 -> 然后本地分支就被推送到远程了。

enter image description here

由于您已在远程创建了相同的分支,因此您可以先获取(fetch),然后再推送(push):

团队资源管理器(Team explorer) -> 同步(Sync) -> 获取(Fetch) -> 推送(Push)。

enter image description here


当您再次克隆远程仓库(无论是在VSTS还是Bitbucket上),并切换到新创建的分支时,该分支将存在于remotes/origin中,因此您可以直接推送。

输入图像描述

嗨Marina - MSFT,该repo在Bitbucket服务器上。当我尝试推送分支时,选项是灰色的。当我安装了VS的Bitbucket扩展程序,登录到服务器并从那里克隆后,推送分支不再是灰色的。可能发生了什么?问候 - Discretizer
如果您克隆了此存储库,然后切换到新创建的分支,您可以直接提交并推送更改。我在我的答案末尾添加了它。 - Marina Liu
谢谢 Marina - MSFT。我克隆了一个没有跟踪的远程分支,将其命名为不同的名称,并希望将结果本地分支推送到远程分支(在应用我的更改后)。Push Branch可以帮助我实现这一点。但正如我之前提到的那样,它是灰色的。我无法理解为什么会这样。这可能是某种身份验证问题吗? - Discretizer
如果您有一个本地分支,其名称(branch1)与您在远程创建的分支(branch2)不同,就像您所问的第一种情况:右键单击本地分支-> 推送分支 将其推送到远程分支 branch1。如果您想将本地 branch1 的更改推送到远程 branch2,可以通过命令行执行:git checkout branch1git push origin branch2 - Marina Liu
2
我的上下文菜单中,“推送分支”选项是灰色的。 - lurker

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