Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除Git中的远程分支_Git_Version Control_Versioning - Fatal编程技术网

删除Git中的远程分支

删除Git中的远程分支,git,version-control,versioning,Git,Version Control,Versioning,我想删除项目存储库的一些远程分支。我已运行下一个命令: git push origin :name_of_branch 当我列出远程分支时 git branch -r 我删除的分支没有出现,但我的合作伙伴正在运行 git fetch 后来 git branch -r 在列表中,我删除的分支机构的名称仍然在列表中。但是,当他尝试使用删除分支时 git push origin :name_of_branch 他收到下一条信息: error: unable to delete 'name_o

我想删除项目存储库的一些远程分支。我已运行下一个命令:

git push origin :name_of_branch
当我列出远程分支时

git branch -r
我删除的分支没有出现,但我的合作伙伴正在运行

git fetch
后来

git branch -r
在列表中,我删除的分支机构的名称仍然在列表中。但是,当他尝试使用删除分支时

git push origin :name_of_branch
他收到下一条信息:

error: unable to delete 'name_of_branch': remote ref does not exist
error: failed to push some refs to 'the_name_of_the_repository'

我如何才能完全删除列表中的分支?

这是因为当您的合作伙伴运行
git fetch
时,分支删除不会“应用”到他的存储库中<代码>获取仅更新和添加分支

git branch -r -d 'remote-branch'
他们可以运行
git remote prune origin
来修剪其列表中不再存在于上游存储库中的远程分支。

git fetch--prune
可用于删除所有远程跟踪分支,这些分支正在跟踪远程存储库中不再存在的分支(即,它们在远程存储库中被删除). 从:

-p

--prune

获取后,删除远程服务器上不再存在的任何远程跟踪分支

还可以使用命令远程跟踪过时的远程跟踪分支

git branch -D -r <remote>/<branch>
git分支-D-r/
如下列文件所述:

使用
-r
-d
删除远程跟踪分支。请注意,只有当远程跟踪分支不再存在于远程存储库中,或者
git fetch
配置为不再提取它们时,才有必要删除这些分支


仅供参考,
git-remote-prune
有点不推荐使用
git-fetch-prune
git-fetch-p
。请参阅:“[
git-fetch--prune
使”
git-remote-update
git-remote-prune
的必要性降低(但没有计划删除
remote-update
remote-prune
)”的副本。