git merge 后 push 到 Gerrit 失败,提示 no new changes
解决思路:
分析:no new changes 的意思,是说,这个合并,是个线性的合并。而合并的那些历史的 commit 节点,在 gerrit 上都已经评审过了,都是已有的 change 单,所以 gerrit 认为没有新的提交,就不让你提交评审。
方法: 在 git merge 的时候,加上 --no-ff 参数,是为了让它生成一个新的 commit,这样就可以提交了~(不过生成的 gerrit change 是看不到改动信息的)
实操
# 切换到开发分支dev1,并拉新
git checkout dev1
git pull
# 切换到release分支,并拉新
git checkout release1
git pull
# 在当前release分支,将dev1合进来
# 作为对比,合并前后可以用git status查看状态
git status
git merge --no-ff dev1
git status
最后一步,可以借用idea的提交代码插件push上去