gerrit提交代码出现错误: [b811e6b] missing Change-Id in commit message footer的解决方案

问题:

  • 操作系统:windwos 10
  • git版本:2.38.0

当使用gerrit提交自己的代码时,如果是第一次使用gerrit提交代码,当执行git push命令时,大概率会出现以下错误提示:

 git push origin 1.0:refs/for/1.0
Enumerating objects: 25, done.
Counting objects: 100% (25/25), done.
Delta compression using up to 8 threads
Compressing objects: 100% (24/24), done.
Writing objects: 100% (24/24), 64.09 KiB | 1.03 MiB/s, done.
Total 24 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (1/1)
remote: Processing changes: refs: 1, done
remote: ERROR: [b811e6b] missing Change-Id in commit message footer
remote:
remote: Hint: To automatically insert Change-Id, install the hook:
remote:   `gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${
     
     gitdir}/hooks/`
remote: And then amend the commit:
remote:   git commit --amend
remote:
To ssh://ai.com:29418/JiNan_Whetstone_Inspection
 ! [remote rejected] 1.0 -> refs/for/1.0 ([b811e6b] missing Change-Id in commit message footer)
error: failed to push some refs to 'ssh://ai.com:29418/JiNan_Whetstone_Inspection'

解决方案:

按照提示的方案内容,复制提示中的两个指令:
第一个:.

gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/

第二个:

 git commit --amend

执行完这两个指令后再执行git push指令,如果提示提交成功,那么祝贺你很幸运,一步就成功了。
然而还有不幸的人,比如我,执行完git push指令后又出现了上面的错误提示,那么是什么原因呢,仔细一看,发现在执行第一个指令:

gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/

后出现了错误提示:

EDY@WIN-BNQB1EAUNL3 MINGW64 /f/JiNan_Whetstone_Inspection (1.0)
$  gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/
subsystem request failed on channel 0
scp: Connection closed

那么该这么解决呢?通过搜索查找后,找到了了解决方案,只需要把第一个指令改一下就OK了,
怎么改呢,就是scp -p -P 29418改成scp -O -P 29418就可以了,内容如下:

EDY@WIN-BNQB1EAUNL3 MINGW64 /f/JiNan_Whetstone_Inspection (1.0)
$  gitdir=$(git rev-parse --git-dir); scp -O -P 29418 [email protected]:hooks/commit-msg ${gitdir}/hooks/
commit-msg                 

执行成功!
然后再执行一次git push 指令,如下所示:

EDY@WIN-BNQB1EAUNL3 MINGW64 /f/JiNan_Whetstone_Inspection (1.0)
$ git push origin HEAD:refs/for/1.0
Enumerating objects: 25, done.
Counting objects: 100% (25/25), done.
Delta compression using up to 8 threads
Compressing objects: 100% (24/24), done.
Writing objects: 100% (24/24), 64.13 KiB | 1.03 MiB/s, done.
Total 24 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (1/1)
remote: Processing changes: new: 1, done
remote:
remote: New Changes:
remote:   http://ai.com/#/c/JiNan_Whetstone_Inspection/+/96089 初步程序框架搭建
remote:
To ssh:/ai.com:29418/JiNan_Whetstone_Inspection
 * [new reference]   HEAD -> refs/for/1.0

EDY@WIN-BNQB1EAUNL3 MINGW64 /f/JiNan_Whetstone_Inspection (1.0)

问题解决。

猜你喜欢

转载自blog.csdn.net/jndingxin/article/details/127693988