我可以在 git 配置中设置推送选项 (git push -o "...") 吗?

Can I set push-options (git push -o "...") in git config?

Git 2.10 引入 git push options (git push -o "my string").

许多命令行选项都是可配置的,我想知道这是否也可行。我无法在 git-config 中找到它,但也许我忽略了它。

那么,是否可以添加(一组)默认推送选项,使...

git push -o "r=joh.doe"

...运行时的默认...

git push

?

上下文: 我将其与 Gerrit 一起使用以直接将更改分配给审阅者(documentation for reference - 使用兼容语法 <push-ref>%my_string)。当上传许多更改并结对工作以审查彼此的代码时,如果我可以在推送时间将该人添加为审阅者,那将会很有用。

如果您只定义一些别名来做到这一点呢?

例如:

alias gp-doe='git push -o "r=joh.doe"'

您也可以使用 Git Aliases

此选项不可配置。

您可以通过Gerrit's CLI ssh -p 29418 $USER@$gerrithost gerrit set-reviewers $CHANGE -a $reviewer -p $project in Gerrit's hook patchset-created. The REST API添加审稿人POST /changes/{change-id}/reviewers也可以。

$reviewer可以是一个用户,也可以是一个包含一个或多个用户的组。

这在 Git 2.16 中已变得可配置(引用 release notes)。

The "--push-option=" option to "git push" now defaults to a list of strings configured via push.pushOption variable.

因此,当在我的用例中应用于 Gerrit 时,这应该可以将审阅者添加到 john.doe 并默认在推送时间发布评论草稿。

git config --add push.pushOption r=john.doe
git config --add push.pushOption publish-comments