合并提交没有更改 ID?
merge commit does not have change id?
我很难将一个分支重置为另一个分支。将它与 ours
策略合并后,我尝试通过 gerrit 进行推送。我收到类似 "missing change id" 的错误。默认情况下,合并提交没有更改 ID。我试图下载用于自动更改 id 的 commit-msg 挂钩。但它对 Windows 没有帮助。知道如何在合并提交中添加更改 ID 吗?
情况:您有一个提交需要推送到 gerrit,但该提交没有 change-id,gerrit 不会接受它。
解决方案:
从 gerrit 下载 commit-msg 钩子
$ scp -p -P 29418 TimCastelijns@server.timcastelijns.nl:hooks/commit-msg tims-project/.git/hooks/
请将端口号、服务器地址和项目名称替换为您自己的。另外,根据您在终端中的当前位置更改 tims-project/.git/hooks/
的路径。钩子必须进入 <project_dir>/.git/hooks/
.
转到您的 repo 文件夹并修改合并提交
$ cd tims-project/
$ git commit --amend
在修改时弹出的编辑器中,会显示当前提交及其提交信息。 这里什么都不做。只需退出并保存编辑器。由于 commit-msg 钩子是一个 post-commit 钩子,任何提交(创建或修改)都会自动分配一个 change-id。
推送到 gerrit
$ git push origin HEAD:refs/for/master
如果需要,用你自己的替换分支和远程。
我很难将一个分支重置为另一个分支。将它与 ours
策略合并后,我尝试通过 gerrit 进行推送。我收到类似 "missing change id" 的错误。默认情况下,合并提交没有更改 ID。我试图下载用于自动更改 id 的 commit-msg 挂钩。但它对 Windows 没有帮助。知道如何在合并提交中添加更改 ID 吗?
情况:您有一个提交需要推送到 gerrit,但该提交没有 change-id,gerrit 不会接受它。
解决方案:
从 gerrit 下载 commit-msg 钩子
$ scp -p -P 29418 TimCastelijns@server.timcastelijns.nl:hooks/commit-msg tims-project/.git/hooks/
请将端口号、服务器地址和项目名称替换为您自己的。另外,根据您在终端中的当前位置更改
tims-project/.git/hooks/
的路径。钩子必须进入<project_dir>/.git/hooks/
.转到您的 repo 文件夹并修改合并提交
$ cd tims-project/ $ git commit --amend
在修改时弹出的编辑器中,会显示当前提交及其提交信息。 这里什么都不做。只需退出并保存编辑器。由于 commit-msg 钩子是一个 post-commit 钩子,任何提交(创建或修改)都会自动分配一个 change-id。
推送到 gerrit
$ git push origin HEAD:refs/for/master
如果需要,用你自己的替换分支和远程。