gerrit:push:先前提交和新提交之间没有变化。无法拉动变化

时间:2015-02-27 10:24:47

标签: git gerrit

我尝试推送我已经提交的新补丁集。我使用命令

git push origin HEAD:refs/for/master

但现在我遇到了问题,已经推送的提交是使用gerrit webinterface从其他gerrit用户重新设置的。 因此,格里特告诉我:

No changes between prior commit xxxx and new commit xxxx

现在我认为我必须拉出已经重新设定的补丁来解决这个问题。但如果我试着

git fetch master

git pull
git告诉我:

Already up-to-date

所以我无法拉出重新设定的补丁集。 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:5)

由于您在gerrit中推送了一个新的补丁集,因此更改应该在现有的提交SHA散列之上。

由于重新提交的提交是gerrit的本地(也可能是对其进行重新命名的用户)并且尚未提交给master,因此您无法直接从master获取/提取,因为它在远程分支中不存在。

您需要使用gerrit URL从gerrit获取提交到本地仓库,然后合并/重新定位您的本地仓库。 gerrit refspec应具有以下格式。

git fetch <Gerrit URL> <refs/changes/<change id>/<gerrit id>/<patch set #>>

当我们挑选一个提交时,也报告了这个git push问题,该提交应用了某些现有提交引入的更改但创建了一个新的SHA哈希,我们尝试在这个新的本地提交之上推送更改。

相关问题