无法在git中删除远程分支

twi*_*lip 12 git

我想从我的中央git存储库中删除一个远程分支.通常的建议是做'git push origin:branchname'或'git push origin:heads/branchname'.但是当我尝试这个时,我收到此错误消息:

***在此存储库
错误中不允许删除分支:hooks/update退出并显示错误代码1
错误:hook拒绝更新refs/heads/branchname
到/opt/repo/myrepo.git
![远程拒绝] branchname(钩子拒绝)
错误:未能将某些引用推送到'/opt/repo/myrepo.git'

是什么赋予了?我正在使用git版本1.5.4.3,如果这有帮助的话.

ebn*_*ter 19

有人在远程仓库中启用了禁止删除的挂钩 - 这通常是为了让某人无法将重新分支推入回购.(我维护了一个相当大的git存储库集合,它们都是这样配置的,虽然没有钩子.)

查看远程存储库中的hooks /目录.会有一个名为"update"的脚本; 这是拒绝让你删除分支的原因.

  • 谢谢!通过这些信息,我得出了这个解决方案:'git --git-dir /opt/repo/myrepo.git config --bool hooks.allowdeletebranch true'.在这之后,我能够使用'git push origin:branchname'来删除远程分支. (7认同)
  • 回答中没有更详细的原因是有很多不同的方法可以做到这一点.确切的机制以及精确的解决方案可以有所不同.错误消息说明问题所在; 具体的解决方案取决于它的实现方式以及您对远程仓库的控制程度. (2认同)