You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gerrit分支是否设所有者?提交权限与评审归属异常咨询

Gerrit分支权限与评审身份问题解答

关于分支所有者

Gerrit本身没有默认的「分支所有者」机制,但可以通过精细权限配置实现类似分支级别的专属管控:

  • 你可以在Gerrit的权限设置中,针对特定分支(比如refs/heads/X)给指定用户/组分配专属权限(如推送、评审管理等),以此模拟“分支所有者”的权限效果。

关于评审所有者与提交作者的自动分配原因

你遇到的评审所有者为B、提交作者为A的情况,核心原因和Git提交元数据、Gerrit的权限逻辑有关:

  1. 本地Git身份配置未更新:你切换到用户A操作时,本地Git仓库的user.name和user.email可能还是用户B的配置——Git默认用本地配置作为提交的committer(提交者)信息,而Gerrit的评审(Change)所有者默认绑定的是提交的committer身份。
  2. Forge Committer Identity权限的作用:这个权限是允许你推送的提交中,committer可以不是当前操作的Gerrit用户(也就是允许你“伪造”提交者身份),但它不会自动修改你本地Git生成的提交元数据。你用A操作时,可能手动指定了author(作者)为A,但committer还是B,所以Gerrit把评审所有者设为了B。

解决建议

  • 切换用户时,先更新本地Git身份配置:
    git config user.name "用户A"
    git config user.email "a@your-domain.com"
    
  • 如果要修改已有提交的committer信息,可通过变基操作:
    git rebase -i HEAD~1 # 编辑最近1次提交
    # 在编辑器中把提交行的pick改成edit,保存退出后执行:
    git commit --amend --committer="用户A <a@your-domain.com>"
    git rebase --continue
    

内容的提问来源于stack exchange,提问作者Owen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 04:14:52