在gerrit中提交的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在gerrit中提交的问题相关的知识,希望对你有一定的参考价值。

我正在尝试使用gerrit,我在提交时遇到了一些问题。当我提交我的更改并将其推送到分支时,有时会引发两个代码审核,一个是我的,另一个是在同一个分支上工作的人,很多次我得到的消息你提前5个提交即使我做了只有一次提交。我正在使用以下命令:

git add <file_name>
git commit -m "commit msg"
git push <branch name>

在进一步的研究中,我发现由于git hook可能存在问题,因为我没有在任何地方使用git hook。由于git hook,gerrit无法区分不同人员所做的提交,因此许多评论都会在一次推送中得到提升。我的理解是否正确?如果没有,请帮助我为什么会这样。

另外我想在git hook命令中询问:

scp -p -P 29418 username@your_gerrit_address:hooks/commit-msg.git/hooks/

这个命令的作用是什么,这个号码是29418.这个数字是由gerrit给出的吗?

答案

当我提交我的更改并将其推送到分支时,有时会引发两个代码审查,一个是我的,另一个是在同一个分支上工作的人

这听起来像是预期的行为;上传供审核的提交尚未合并到您的分支机构。这个想法是提交由另一个团队成员(或您的组织想要的任何设置)审核,批准,然后提交/合并。

直到您按下“提交”按钮,提交实际出现在“真实”分支上才会出现。意思是,任何下载存储库的人都可以看到它。

很多次我得到消息你提前5次提交,即使我只做了一次提交

这是因为您的本地仓库有5个提交,它们不知道是否存在于上游(在“官方”分支中)。

首先,尝试“git fetch”;它将更新本地副本的远程(服务器仓库)视图,以便您可以看到最近提交的任何内容。从本质上讲,这可以让您的本地回购知道“好的,现在提交这些提交”。

如果这还不够,你可能在gerrit中有5个未提交的提交。

由于git hook,gerrit无法区分不同人员所做的提交,因此许多评论都会在一次推送中得到提升。我的理解是否正确?

这似乎很可能。 Gerrit通过“Change-Id:”标记匹配对现有更改的提交。如果您没有git commit hook来添加该行,那么每次推送时,gerrit都可能为每次提交创建一个新的更改。

这也与前面的讨论有关;您的本地仓库不知道其中一些提交已经提交。因此,它每次上传所有5个。

以上是关于在gerrit中提交的问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在gerrit中修改已提交的change

gerrit提交代码评审,没有通过怎么办?

gerrit的简单介绍

ubuntu搭建gerrit+gitweb代码审核系统

Gerrit 中使用的常见用法及常见问题记录(更新中)

敏捷开发-代码提交流程& 安装gerrit