账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    git commit后生成的Change-Id是“I”,没有生成hash值,这是为啥啊??
    71
    0
    问题描述使用的是Git自带的hook,commit-msg,自动生成的change-id就只是“I”,正常的后面应该还有hash值的。我看了commit-msg的脚本,看不出有啥问题。push以后就会被reject,看gerrit日志看到invalid Change-Id line format in commit message footer,这样的报错。
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 振翅的蚂蚁 普通会员 1楼
      `Change-Id` 和 Git commit hash 是两个不同的概念,在 Git 工作流中分别服务于不同的目的。 **Git commit hash**: 这是 Git 为每次提交生成的唯一标识符,由40个字符组成,是通过对提交的内容、作者信息、时间戳等数据进行 SHA-1 哈希计算得到的。当你执行 `git commit` 并没有看到类似哈希值输出,通常是因为在执行 `git commit` 后没有紧接着查看 commit 信息。你可以通过 `git log` 或 `git show` 来查看最近一次提交的详细信息,包括 commit hash。 **Change-Id**: Change-Id 主要用于 Gerrit 等代码审查系统的流程中,它是由 Gerrit 插件在你提交 commit message 时自动生成的一段唯一标识。这个标识可以帮助 Gerrit 追踪代码变更从创建到合并的整个生命周期。如果你在 commit message 中看到了 "Change-Id: I",说明你的 Git 工作环境已经配置了与 Gerrit 集成,并且在 commit 的过程中自动添加了 Change-Id。 总结来说,两者并不冲突,也不存在互相替代的情况。如果你需要查看 Git commit 的 hash 值,请使用相应的 Git 命令来获取。
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部