我有一个本地克隆,我的提交显示作者和电子邮件ID为UserA,因为我已经使用git config配置了我的克隆。
我从我同事的克隆(UserB)中获取并合并了一些提交,这些提交也在同一个项目上工作,而不是从父项目中获取和合并。
我的Git日志,显示了我提交的提交以及我的同事提交的内容。
我在这里的问题是
1)Gerrit代码审核可识别父项目中的提交。因此,当我从我的本地克隆推送时,我从我的同事那里提交的提交未被识别,我收到此错误
! [远程拒绝] HEAD - > refs / for / project1(你不是提交者UserB@xyz.com)
有人可以帮我解决这个Gerrit错误吗?
2)如何识别具有我同事姓名的提交是从父项目中提取还是直接从我同事的克隆中提取
答案 0 :(得分:3)
1)Gerrit检查邮件地址的所有更改。只有当所有更改都具有在推送更改的用户帐户中配置的邮件地址时,Gerrit才会让它们通过。但是,如果您需要绕过此检查,则需要为您的用户授予“Forge Author Identity”和“Forge committer identity”的访问权限。
2)唯一可行的方法是查看父存储库是否包含该提交。如果是这样,那么你获得它们的唯一方法就是直接从你的同事那里获取。但是,如果提交已经被推送到父存储库,我不知道如何明确地说,从哪个存储库提取提交。但我也没有看到为什么这是必要的要求。