Git Gerrit代码审查推送至空回购不';行不通

Git Gerrit代码审查推送至空回购不';行不通,git,push,gerrit,fast-forward,Git,Push,Gerrit,Fast Forward,我安装并配置了自己的Gerrit服务器。我使用Gerrit的web gui创建了一个存储库。我能够使用“git”命令成功地克隆这个空存储库,因此配置似乎很好。接下来,我: 已配置我的访问权限:git config--global user.email…,git config--global user.name… 添加远程:git添加远程源myUser@myGitHost:29418/project.git 创建并提交文件:git add file,gitcommit-m“first commit

我安装并配置了自己的Gerrit服务器。我使用Gerrit的web gui创建了一个存储库。我能够使用“git”命令成功地克隆这个空存储库,因此配置似乎很好。接下来,我:

  • 已配置我的访问权限:
    git config--global user.email…
    git config--global user.name…

  • 添加远程:
    git添加远程源myUser@myGitHost:29418/project.git

  • 创建并提交文件:
    git add file
    ,git
    commit-m“first commit”

  • 到目前为止还不错

    但是,当我尝试将其推送到回购协议时,我得到了输出:

    myUser@myGitHost:~/project$ git push origin master
    Counting objects: 7, done.
    Delta compression using up to 2 threads.
    Compressing objects: 100% (3/3), done.
    Writing objects: 100% (6/6), 525 bytes, done.
    Total 6 (delta 0), reused 0 (delta 0)
    remote: Processing changes: refs: 1, done
    To ssh://myUser@myGitHost:29418/project.git
     ! [remote rejected] master -> master (can not update the reference as a fast forward)
    error: failed to push some refs to 'ssh://myUser@myGitHost:29418/project.git'
    
    我试图寻找解决办法。“
    git pull origin master
    ”不工作。使用
    -f
    选项推送也不起作用

    有人能帮我吗

    编辑:push-f的输出:

    myUser@myGitHost:~/project$ git push -f origin master
    Counting objects: 7, done.
    Delta compression using up to 2 threads.
    Compressing objects: 100% (3/3), done.
    Writing objects: 100% (6/6), 525 bytes, done.
    Total 6 (delta 0), reused 0 (delta 0)
    remote: Processing changes: refs: 1, done
    To ssh://myUser@myGitHost:29418/project.git
     ! [remote rejected] master -> master (can not update the reference as a fast forward)
    error: failed to push some refs to 'ssh://myUser@myGitHost:29418/project.git'
    
    我所说的“git pull origin master”是指ppl提到的大多数解决方案是在推之前进行拉操作,例如:。该拉动输出:

    myUser@myGitHost:~/project$ git pull origin master
    From ssh://myGitHost:29418/project
     * branch            master     -> FETCH_HEAD
    Already up-to-date.
    
    但当我推的时候,输出还是一样的:

    无法将引用更新为快进


    你想绕过Gerrit的代码审查功能吗?如果没有,请尝试
    git-push-origin-HEAD:refs/for/master

    请显示
    push-f的输出。什么意思,
    拉原点主机不工作
    ?您好,谢谢您的反馈。为了回答你的问题,我在帖子中添加了一个“编辑”部分。好的,谢谢-当我按照你说的做时,它会说“![remote rejected]HEAD->refs/for/master(无效提交人)”,我会设法解决这个问题。但如果我想绕过代码审查怎么办?如果我按git-push-origin-HEAD:refs/heads/master,我仍然会得到“![remote-rejected]HEAD->master(不能快速更新引用)”。文档中说,这可以绕过代码审查。所以问题似乎出在Git本身,而不是gerrit?好吧,根据这个:我需要一个.gitreview文件来直接推送。我如何在不添加此文件的情况下执行此操作(firectly推送)?我想回答我之前的评论,因为我在回复帖子时发现了这一点: