码迷,mamicode.com
首页 > 其他好文 > 详细

Gerrit评审报错[remote rejected] develop-> refs/for/develop(no new changes)

时间:2016-05-07 08:46:20      阅读:1148      评论:0      收藏:0      [点我收藏+]

标签:

在使用Gerrit做评审的时候,在本次push有提交内容的情况下,遇到这个奇葩错误[remote rejected] develop-> refs/for/develop(no new changes)
具体情况如下:
我使用develop分支创建了一个新的功能分支A,并将修改的代码push到Gerrit(对应远程的分支A),并在Gerrit完成评审。接着,我需要将分支A合并到develop分支。我在本地完成merge操作(没有冲突),这个时候再提交到远程的develop,客户端提示我[remote rejected] develop-> refs/for/develop(no new changes)

后来在网上看到这篇文章,具体内容如下:

问题描述: kevin@kevin-OptiPlex-330$ git push Total 0 (delta 0), reused
0 (delta 0) remote: Processing changes: refs: 1, done To
ssh://xuke@elastos.org:29418/ElastosRDKforEmulator ! [remote
rejected] master -> refs/for/master (no new changes) error: failed to
push some refs to ‘ssh://xuke@elastos.org:29418/ElastosRDKforEmulator‘
回答: 这个提示表示没有新的提交。Gerrit审核根据commit
id和changeId来判断是否是新的提交。如果两个分支的内容完全一模一样(一般出现在初次建立新的分支的时候),那么有可能从A分支merge到B分支后,B分支生成的commit
id和changeId完全一样(这种情况只要两个分支的内容不一样就不可能发生),这时Gerrit审核判断已经有了相同的内容,因此拒绝提交。
解决办法是通过git commit –amend生成新的changeId。

文章中的情况与我的情况应该基本类似,于是我尝试在本地merge操作完成后,再次修改一个文件(敲几个空格),commit后,再次push到Gerrit。操作成功。但是Gerrit中出现的要评审的内容只有我第二次修改的那个文件的内容。完成评审后再检查其他数据,发现第一次提交的内容已经成功merge到远程的develop上了。

Gerrit评审报错[remote rejected] develop-> refs/for/develop(no new changes)

标签:

原文地址:http://blog.csdn.net/lnho2015/article/details/51333619

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!