这是我的配置;
在服务器上:
os:红帽企业Linux服务器版本6.7(圣地亚哥)
git 2.7.1
gerrit 2.12.2
在客户端:
Rational Application Developer v9.0
Egit v4.2
Mylin评论连接器:Gerrit v2.9
当我尝试将更改推送到gerrit时("推送上游"),它会因缺少更改ID错误消息而失败。
我做了一些谷歌搜索,并在本地仓库的.git / hooks目录中安装了commit-msg钩子。
更改ID在提交消息中,但在此之后,(mylin客户端我猜)添加了一堆注释。
请指教。提前谢谢。
答案 0 :(得分:0)
Change-Id必须位于页脚中(即提交消息的最后一行)。您应该使用
修复提交消息git commit --amend
您应该将Change-Id移到最后或删除所有不必要的内容,包括change-id - 在使用您安装的钩子进行修改时应该重新生成。
在Gerrit中有效的提交应该至少包含消息的第一行(主题)和页脚中的Change-Id。来自Change Ids docs:
要被Gerrit选中,Change-Id行必须位于提交消息的页脚(最后一段)
即:
Improve foo widget by attaching a bar
Change-Id: Ic8aaa0728a43936cd4c6e1ed590e01ba8f0fbf5b
我相信如果提交消息只包含更改ID(没有主题),则它无效。