运行 Gerrit 的 commit-msg 脚本是否可以独立使用,而不是挂钩?

Is it possible to run Gerrit's commit-msg script standalone, not as hook?

  1. 我没有安装 Gerrit 挂钩
  2. 我有简单的提交
  3. 我想检查提交的 Change-id

是否可以通过 运行 某些命令获取更改 ID,例如

./commit-msg xyz

?

我不想使用 Eclipse。我不想配置挂钩。

commit-msg 脚本假定为 运行 作为 Git 挂钩(参见 example file)。因此,它做出了几个假设。

单独执行它(你本来可以尝试的,对吧?)失败并显示

sed: : No such file or directory

因此,,你不能运行这个独立的。

您也许可以在手动调用时修复它以使其正常工作,但我不确定您的动机。你听起来好像不想安装任何东西,但 git-review 是个好帮手。

您不需要在克隆的每个存储库中手动安装 commit-msg 挂钩。您可以配置 Git 自动为您完成这项工作。当您执行克隆命令时 Git 复制位于以下位置的存储库模板:

Linux = /usr/share/git-core/templates
Windows = C:/Program Files (x86)/Git/share/git-core/templates

如果您将 commit-msg 挂钩添加到模板,它将自动安装到每个克隆的存储库中。

但是,最好的做法是:

  1. 创建个人模板(例如 $HOME/.git-templates)
  2. 在 $HOME/ 中安装 commit-msg。git-templates/hooks
  3. 配置 Git 以使用您的个人模板:

    git config --global init.templatedir $HOME/.git-templates