【问题标题】:Failed to push some refs to remote repository (prohibited by Gerrit)无法将一些 refs 推送到远程存储库(Gerrit 禁止)
【发布时间】:2016-06-21 20:33:02
【问题描述】:

我知道以前可能有人问过这个问题,但我想了解这个问题。我正在尝试将新创建的分支从本地存储库推送到远程存储库。以下是我采取的行动:

  1. 在我的本地系统中创建一个克隆存储库。
  2. 在本地创建一个新分支(此处命名为“Newbranch”)。请注意,远程存储库中不存在该分支。
  3. 将 Newbranch 推送到远程存储库。

推送后收到此错误消息:

Total 0 (delta 0), reused 0 (delta 0)
remote: Processing changes: refs: 1, done
To 'remote repository URL'
! [remote rejected] Newbranch -> Newbranch (prohibited by Gerrit)
error: failed to push some refs to 'remote repository URL'

谁能告诉我错误代码?需要采取哪些步骤来解决并能够在远程创建新分支?我刚开始使用 Git。如果这有帮助,git 存储库由 Gerrit Code Review 提供支持。我们将非常感谢您的回复。

【问题讨论】:

    标签: git git-branch gerrit git-push git-bash


    【解决方案1】:

    请发布您运行的确切命令。很可能您没有使用完整的命名空间进行推送。 gerrit 倾向于选择器,因为它首先是一个审查系统,其次是一个 git hoster。

    即如果您想推送提交以供审核,您通常会运行:

    git push origin HEAD:refs/for/master
    

    这意味着获取您在当前结帐点中的所有提交并将它们上传以合并到主分支中。

    注意:origin 这是默认情况下为远程存储库提供的短名称。在您的情况下,它可能是其他东西,因此请进行相应调整(例如使用远程 repo 的完整 URI)。

    【讨论】:

      【解决方案2】:

      要创建新分支并将其推送到远程存储库,您应该:

      git checkout -b [new_branch_name]
      
      git push -u origin [new_branch_name]
      

      为了解决您面临的错误:

      [remote denied] Newbranch -> Newbranch(Gerrit 禁止)错误:未能将一些引用推送到“远程存储库 URL”

      您应该向系统管理员检查您的用户凭据,因为他应该首先将创建新分支的权限授予您的用户帐户。

      Gerrit的权限配置完全是explained in the documentations.

      【讨论】:

      • 谢谢。我向我们的管理员请求许可。我现在能够创建新的分支。是否也可以在分支中创建子分支?那么,例如,origin/Newbranch/Subbranch?
      • 很高兴我能帮上忙。对于分支,git 中没有子分支功能。您可以拥有任意数量的分支,同时从其他分支创建分支。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 2018-06-24
      • 2010-10-25
      • 2018-03-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多