gpt4 book ai didi

git - Gerrit: push 代码审查已在 Gerrit 上的提交

转载 作者:行者123 更新时间:2023-12-02 14:43:00 29 4
gpt4 key购买 nike

我的工作场所开始使用 Gerrit 来管理我们所有的项目。我以前从未使用过 Gerrit。我正在尝试找出一个好的工作流程来使用它来提交代码以供审核。

我创建了一个分支foo。我做出了 promise ,并将其推送给 Gerrit。然后我从 foo 开始创建一个分支 bar,并对其进行了另一次提交。我也将分支 bar 推送到了 Gerrit。

我现在在分支bar:

$ git branch
* bar
foo

现在我想开始对从 barfoo 的 merge 进行代码审查。有人告诉我这个命令应该做到这一点:

$ git push gerrit HEAD:refs/for/foo
Total 0 (delta 0), reused 0 (delta 0)
remote:
remote: Processing changes: refs: 1, done
To ssh://ram@gerrit/acme/my_project
! [remote rejected] HEAD -> refs/for/foo (no new changes)
error: failed to push some refs to 'ssh://ram@gerrit/acme/my_project'

如您所见,我收到错误(没有新更改)。我问我们本地的 Gerrit 冠军为什么,他说据他所知,你不能 push Gerrit 上已有的代码审查代码,即使该代码位于不同的分支上。

看起来,如果我避免将分支 bar 推送到 Gerrit,我的问题就会消失,代码审查也会正常进行。 但我更希望能够推送我想要的任何 %&@# 而不会干扰代码审查。我喜欢推送分支。我喜欢将我的分支放在 Gerrit 上,因为这样我也可以将它们发送给其他人在网络界面上查看。

是否可以在 Gerrit 中进行代码审查,而不禁止我将分支推送到 Gerrit?

最佳答案

我认为你需要以不同的方式进行 merge
- 首先,在本地 merge 分支 - git checkout foo 然后 git merge origin/bar
- 其次,将 merge 提交从本地 foo 推送到远程 foo - git push gerrit HEAD:refs/for/foo

别忘了输入 changeId merge 提交。

一般来说,不需要对提交进行两次审查。您是否需要检查 merge 提交或 rebase 方法。如果您的分支不是特定的分支(例如开发与发布),请考虑使用 rebase

关于git - Gerrit: push 代码审查已在 Gerrit 上的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39275866/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com