https://review.opendev.org/Documentation/access-control.html(官网)
https://www.shangmayuan.com/a/d5145e7e18de4f52bd3d9625.html
https://www.cnblogs.com/yan-2010/p/10718606.html#_lab2_4_0
https://blog.csdn.net/xiaoqiaoq0/article/details/123567136
https://blog.csdn.net/apple198942/article/details/119736909
工程配置
-
设置工程可见性
通过管理员账号创建Group,添加成员。
https://www.cnblogs.com/zndxall/p/14781145.html给管理员设置Owner权限,否则管理员看不到组员的提交记录,进行code_review。
提交
-
git clone 解决Permission Denied (publickey)问题
如果在gerrit公钥已经配置正确的情况下,仍有此问题,那么在git-bash里要执行以下指令:添加sshkey至ssh-agent
1、执行eval "$(ssh-agent -s)"
确认ssh-agent处于开启状态,打印pid... 表示启用中;
2、执行ssh-agent bash
(若未执行会报错:Could not open a connection to your authentication)
3、执行指令ssh-add ~/.ssh/id_rsa
添加ssh key至ssh agent,此步会要求输入步骤二设置的密码; -
invalid committer
1)
问题产生的原因是在commit的时候用的是git配置的全局的用户,所以这里就提交不上去了。
解决办法是修改所有commit的author信息:https://www.cnblogs.com/yanglang/p/11794861.htmlgit rebase -i root 然后用:%s/pick/e/g指令将pick全部替换为e,:wq!保存。 反复执行下面的两个指令,直至rebase结束. git commit --amend --author="username <邮箱>" git rebase --continue
https://blog.csdn.net/qq_29232943/article/details/103121667 (配置项目范围的git用户)
2)
上面1)的问题解决完了 ,又出现了新的问题:
上stackoverflow上搜到了一种解决办法:https://stackoverflow.com/questions/38066069/gerrit-will-not-push-error-no-common-ancestry
执行git pull --rebase origin master
即可解决问题
- [remote rejected] prohibited by gerrit: ref update access deni
0.若是Gerrit提交使用一下命令会报错
# git push origion master
! [remote rejected] master -> master (prohibited by Gerrit)
1.解决
# git push origion HEAD:refs/for/master
-
missing Change-Id
https://blog.csdn.net/u012843873/article/details/82424514
找到缺少change-id的commit的前一个commit-id(假若为ID),然后执行git rebase -i ID
,逐个wq!保存即可.git commit如何自动生成Change-Id:https://www.cnblogs.com/wangyk517/p/5825042.html(从gerrit服务的项目的.git/Hook里拉取commit-msg文件)
-
push时提示remote closed
一般是gerrit的某个commit被abandon了之后本地又在push
0 条评论