git 删除不再存在的远程分支

70gysomp  于 2023-06-20  发布在  Git
关注(0)|答案(4)|浏览(242)

当我运行命令git branch -a时,我看到一个与不再存在的远程设备相关联的分支列表。例如:

remotes/does-not-exist/branch1
remotes/does-not-exist/branch2
remotes/origin/dev
remotes/origin/feature3

我想从上面的列表中删除与does-not-exist关联的分支。但是,如果我运行命令git remote prune does-not-exist,我会得到以下错误

conq: repository does not exist.
fatal: Could not read from remote repository.

如何删除与does-not-exist关联的分支?我应该删除.git/refs/remotes/下的文件夹吗?

kadbb459

kadbb4591#

我使用GitLab网页将一个分支合并到master。
在我本地的贝壳上,分支仍然存在

git branch -a
* 9-deploy
master   
remotes/origin/9-deploy   
remotes/origin/HEAD -> origin/master   
remotes/origin/master

删除了本地分支

git branch -d 9-deploy

删除了对远程分支的引用

git fetch -p

使用以下reference查找命令

pkwftd7m

pkwftd7m2#

您应该删除远程,而不是分支。这样,分支也将被删除。git remote remove does-not-exist

w46czmvw

w46czmvw3#

要删除远程分支,我运行git push origin --delete <branch>。因此,在您的情况下,您可以运行以下命令:

git push does-not-exist --delete branch1
git push does-not-exist --delete branch2

希望这能帮上忙。

qlvxas9a

qlvxas9a4#

我也遇到了同样的问题,最终使用git branch -Dr does-not-exist/branch1删除了它们。

相关问题