【问题标题】:git push origin DENIED by fallthru, hook declined: gitolitegit push origin 被 fallthru 拒绝,钩子被拒绝:gitolite
【发布时间】:2012-05-12 20:08:53
【问题描述】:

我在使用 Gitolite 推送 git 时遇到问题。
当我尝试这个时:

git push origin :refs/tags/deployment

我得到这个错误:

remote: D NAME/install.py repos michael DENIED by fallthru
remote: error: hook declined to update refs/tags/deployment
To gitolite@admin:repos
 ! [remote rejected] deployment (hook declined)
error: failed to push some refs to 'gitolite@admin:repos'

我已授予组 deploy [其中用户 michael 是其中的成员] 删除 Gitolite 配置中的分支的权限:

@deply  =   michael

repo  repos

        RWD    =   @deply

我看过这个帖子:“Unable to push in Git. Why?

但是我没有使用任何我知道的钩子,也找不到任何其他可能相关的东西。

我可能缺少什么吗?
有人遇到过吗?

【问题讨论】:

  • 你用的是什么gitolite版本?
  • 我安装了这个版本的gitolite:1.5.4-2
  • 我希望不是 ;) 这应该是 V2 或 V3:请参阅 stackoverflow.com/questions/10207919/… 以确定 Gitolite 版本。
  • ssh 到服务器给我:你好 michael,这里的 gitolite 版本是 1.5.4-2~bpo50+1 (Debian)
  • 这似乎是 Gitolite 的 incredibly old 版本(2010 年 7 月 23 日),可能与 github.com/sitaramc/gitolite/blob/… 有关错误消息。

标签: git gitolite git-push


【解决方案1】:

这对我有用,而没有其他方法:

cd ~gitlab/gitlab
sudo -u gitlab -H bundle exec rake gitlab:gitolite:update_keys RAILS_ENV=production
sudo -u gitlab -H bundle exec rake gitlab:gitolite:update_repos RAILS_ENV=production

【讨论】:

    【解决方案2】:

    您需要RW+ 权限才能更改/删除引用

    RW+,用于“push -f”或允许删除引用(即销毁信息)

    另外,如果您使用的是 V2,这可能适用:

    RWD 和 RW+D,用于 ref 删除。一旦你在 repo 中使用它,普通的 RW+ 就不能再删除 ref;它只能倒带

    来源:

    http://sitaramc.github.com/gitolite/g2/conf.html

    http://sitaramc.github.com/gitolite/rules.html

    【讨论】:

    • 以上两个源链接都被导航到未找到的页面
    猜你喜欢
    • 2014-06-15
    • 1970-01-01
    • 1970-01-01
    • 2016-10-30
    • 2019-01-11
    • 2016-06-02
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    相关资源
    最近更新 更多