我跑了 git branch -a
* master
remotes/origin/test
remotes/origin/master
我想删除我的远程分支
我试过了
git push origin --delete remotes/origin/test
我有
错误:无法删除“远程/来源/测试”:远程引用不存在
它怎么不存在?
我做了一个git branch -a,并且看到了它。
我错过了什么吗?
我跑了 git branch -a
* master
remotes/origin/test
remotes/origin/master
我想删除我的远程分支
我试过了
git push origin --delete remotes/origin/test
我有
错误:无法删除“远程/来源/测试”:远程引用不存在
它怎么不存在?
我做了一个git branch -a,并且看到了它。
我错过了什么吗?
Answers:
该命令git branch -a显示本地存储库中存在的远程分支。这听起来可能有些混乱,但是要理解它,您必须了解远程分支与远程存储库中存在的分支之间存在差异。远程分支是映射到远程存储库分支的本地分支。因此,一组远程分支代表了远程存储库的状态。
更新远程分支列表的常用方法是使用git fetch。这将自动从远程获取更新的分支列表,并在本地存储库中设置远程分支,还获取您可能缺少的所有提交对象。
但是,默认情况下,git fetch不会删除在远程不再具有对应分支的远程分支。为此,您明确需要修剪远程分支的列表:
git fetch --prune
这将自动摆脱远程服务器上不再存在的远程分支。然后,git branch -r将向您显示遥控器上实际存在的分支的更新列表:可以使用删除的分支git push。
话虽如此,为了使用git push --delete,您需要在远程存储库中指定分支的名称;不是您的远程分支的名称。因此,要删除分支test(由远程分支代表origin/test),可以使用git push origin --delete test。
git branch -r | grep "origin"对于使用fork的大型项目也将有所帮助
remotes/origin/。或两者。
有一个删除原始分支的快捷方式:
git push origin :<branch_name>
这和做的一样 git push origin --delete <branch_name>
git push origin --delete yourBranch
I,接着将溶液戳与端部稍加调整。我的步骤如下
- git fetch --prune;
- git branch -a打印以下内容
master
branch
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/branch(删除要删除的远程分支)
- git push origin --delete branch。
在这里,要删除的分支未命名为,remotes/origin/branch而是简单地branch。并且分支被删除。
origin/branch它应该是的名称branch。
git branch -a 将列出您本地的分支机构,而不是您的远程分支机构。
该错误error: unable to delete 'remotes/origin/test': remote ref does not exist意味着您的遥控器中没有该名称的分支,但该分支存在于本地。
对我来说,这有效$▶git branch -D -r origin / mybranch
细节
$▶git branch -a | grep mybranch遥控器/起源/ mybranch
$▶git branch -r | grep mybranch来源/ mybranch
$▶git branch开发*功能/预部署
$▶git push origin --delete mybranch错误:无法删除“ mybranch”:远程引用不存在错误:无法将某些引用推送到“ git@10.102.100.38:config / myrepo.git”
$▶git branch -D -r origin / mybranch删除了远程分支的origin / mybranch(以前是62c7421)。
$▶git branch -a | grep mybranch
$▶git branch -r | grep mybranch
git push origin --delete origin/test
应该也可以
git branch -a将列出您本地的分支机构,而不是您的远程机构。对?