我想从我的中央git存储库中删除一个远程分支。通常的建议是做'git push origin:branchname'或'git push origin:heads / branchname'。但是,当我尝试时,我收到此错误消息:
***此存储库中不允许删除分支 错误:挂钩/更新退出,错误代码1
错误:hook拒绝更新refs / heads / branchname
至/opt/repo/myrepo.git
! [远程拒绝] branchname(钩子拒绝)
错误:未能将某些引用推送到'/opt/repo/myrepo.git'
是什么给出的?我正在使用git版本1.5.4.3,如果有帮助的话。
答案 0 :(得分:19)
有人在远程仓库中启用了禁止删除的挂钩 - 这通常是为了让某人无法将重新分支推入回购。 (我维护了一个相当大的git存储库集合,它们都是这样配置的,虽然没有钩子。)
查看远程存储库中的hooks /目录。会有一个名为“update”的脚本;这是拒绝让你删除分支的原因。
答案 1 :(得分:3)
我认为这可能是消息所说的内容:远程存储库不允许删除历史记录。如果您确实需要此功能,请考虑使用不同的git托管(如果您无法调整当前使用的设置)。
答案 2 :(得分:2)
您可能需要手动登录远程存储库并删除分支(即 - 从文件系统中删除)。