2013-07-02 120 views
6

我在删除远程分支(使用git)时出现了一些问题。
我已发出以下命令:钩子拒绝更新问题,同时删除远程分支

git push origin :newpdo 

remote: Fatal: +refs/heads/newpdo myusername DENIED by fallthru <br> 
remote: error: hook declined to update refs/heads/newpdo <br> 
[remote rejected] newpdo &lt;hook declined &gt; <br> 
error: failed to push some references to 'ssh://myssh path' 

但是,我没有得到任何的问题,而“git push origin pdo

我缺少的东西?


有什么建议吗?

+0

显然你的遥控器有一个钩子,它会降低分支删除... – kan

+0

所以我应该在这里做什么? –

+0

a)不要试图做一些回购管理员不希望你做的事情或者b)与回购管理员交谈。 – Chronial

回答

10

远程:致命:+参/头/ newpdo名为myUsername通过fallthru

DENIED “fallthru” 是指回购可能是由gitolite,其具有fallthru rules管理:

  • 此用户和此回购的所有规则都按照它们出现在conf文件中的顺序收集和检查
  • 对于每个规则:
    • 如果ref与refex不匹配,则跳过该规则。
    • 如果这是拒绝规则,则访问被拒绝并且匹配停止。
    • 如果权限字段与特定类型的写入操作匹配,则允许访问并且匹配停止。
  • 如果没有规则以决定结尾(“fallthru”),则拒绝访问

在你的情况,你没有删除一个分支的权利。
gitolite(gitolite-admin repo的所有者)的管理员可以轻松修改这些权限以授予您该功能。

您可能有RW,用于推送现有参考或创建新参考。
但你可能不是RW+,对于“push -f”或删除允许(即破坏信息或分支删除)。