首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Gerrit 跟git代码提交有点区别!

Gerrit 跟git代码提交有点区别!

原创
作者头像
用户10171634
发布2025-10-21 11:54:20
发布2025-10-21 11:54:20
9900
代码可运行
举报
运行总次数:0
代码可运行

第一次提交:

1.从服务器把hooks的commit-msg copy到本地? 让本地的 Git 提交能自动生成 Gerrit 所需的 Change-Id

代码语言:javascript
代码运行次数:0
运行
复制
~/work/00/00 gitdir = (gitrev-parse --git-dir); scp -p -P 29418 username@192.168.3.1:hooks/commit-msg

Plain Text

2.git add 文件名 git commit -m "你的提交记录"

3.git push origin HEAD:refs/for/master

跟git不一样需要提交审核。

如果还是出现没有changid,

执行.git commit --amend --no-edit

把这次提交重新生成一次,但保持提交信息不变。

为什么要这样做?

Gerrit 的 commit-msg hook 只有在 commit/amend 的时候才会生效

  • 当你安装了 hook 后,Git 执行 commit --amend 时,hook 会自动在提交信息底部添加 Change-Id 。
  • 如果你直接 push 原来的提交,提交里没有 Change-Id,Gerrit 就会报错。

所以这个命令的意思是:

  1. 利用 hook 给上次提交自动加上 Change-Id
  2. 不改提交内容或提交信息

然后就可以安全地推送到 Gerrit:

代码语言:javascript
代码运行次数:0
运行
复制
git push origin HEAD:refs/for/master

第二次提交:

如果你的hook已经安装了成功后的提交步骤:

git add <file>

git commit -m "你的提交信息"

git push origin HEAD:refs/for/master

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么要这样做?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档