这个报错的意思是commit信息里面缺失了change-id。
解决方法如下:
1. 根据报错时候的提醒完成如下步骤
step1: gitdir=$(git rev-parse --git-dir); scp -p -P 29418 username@gerrit.pt.xxx.cn:hooks/commit-msg ${gitdir}/hooks/
step2: git commit --amend 此时就可以看到commit信息里面有change-id了
step3: 重新git push
然而有时候,明明git commit --amend的时候已经看到有change-id了,但是git push之后还是报错: missing Change-Id in commit message footer。别慌,这可能是因为,缺失change-id的并不是这次的提交,而是前面某次的提交,解决方案如下:
2. 查找缺失chang-id的commit,并加上change-id
step1: git log查看前面的提交,看看是否有没有change-id的提交
step2: 如果那个提交无关紧要,可以直接git reset到那个提交之前的版本,然后重新提交现在的改动即可。
step3: 如果那个提交必须要有,那么git reset到那个提交的版本,然后git commit --amend给他加上change-id。然后回到自己的改动,重新提交即可。