Kat*_*Kat 5 git version-control tfs
我使用git在2015年安装了VSTFS。不知何故,我们有两个分支,Development(开发)是我想保持隔离的一个分支,因为那是我们的主人。不知何故,还有一个远程分支开发(小写d)。我想删除它,因为它很混乱,但是如果我们遇到问题,我恐怕要删除它。
我的问题是,我正在运行VS 2017,它不会删除远程分支。我通过右键单击团队资源管理器并单击“删除”来完成此操作。
来自输出窗口的消息显示以下内容:
从远程存储库删除分支时遇到错误:Git进程意外失败。PushCommand.ExecutePushCommand
所以,我打开一个cli,看看那里有什么。这里的命令是做
git branch -d -r origin/<branchname>
Run Code Online (Sandbox Code Playgroud)
但是,我在另一个废弃分支上进行了尝试,但仍然可以在浏览器的TFS列表中看到它。
我的问题是,如何删除小写开发以确保不删除大写开发?
更新:
尽管我是TFS管理员,但似乎我对git实例缺少ForcePush权限。当前正在确定这是否是导致问题的原因。
更新2: 有一个很棒的执行摘要,介绍了如何删除以前的stackoverflow答案中提供的远程分支。我认为遗漏的一件事是,为了执行命令,$ git push -d <remote_name> <branch_name>您将需要权限才能“强制”到分支。
更新:这可能与git的大小写不敏感有关。在此处查看博客文章:https : //tosbourn.com/git-branches-seem-to-be-case-insensitive/
原始答案:
我认为git push origin :development会做到。您可以将其视为“将null推送给开发人员”-换句话说,删除分支。
我相信在执行时,您git branch -d -r origin/<branch name>只会删除本地存储的远程跟踪分支。