Git Gerrit拒绝GUI中的更改

Git Gerrit拒绝GUI中的更改,git,version-control,gerrit,Git,Version Control,Gerrit,如何在Gerrit UI中配置访问权限以允许拒绝签入?我知道一般的经验法则是,如果一段代码有一定的分数,它应该被忽略,但是有没有一种干净的方法彻底拒绝一个分支呢?我这样问是因为我在Gerrit中经历了一个糟糕的合并/批准/重新基础周期 使用放弃按钮并没有从依赖关系树中删除“已拒绝”的更改。如果某个内容完全错误,通常通过web UI中的“放弃”按钮放弃。这就是您想要的吗?您可以设置一些连续集成魔法,自动执行诸如运行lint checker、运行单元测试等操作,然后让这些操作的结果触发gerrit中

如何在Gerrit UI中配置访问权限以允许拒绝签入?我知道一般的经验法则是,如果一段代码有一定的分数,它应该被忽略,但是有没有一种干净的方法彻底拒绝一个分支呢?我这样问是因为我在Gerrit中经历了一个糟糕的合并/批准/重新基础周期


使用放弃按钮并没有从依赖关系树中删除“已拒绝”的更改。

如果某个内容完全错误,通常通过web UI中的“放弃”按钮放弃。这就是您想要的吗?

您可以设置一些连续集成魔法,自动执行诸如运行lint checker、运行单元测试等操作,然后让这些操作的结果触发gerrit中的不同行为。在维基媒体基金会,我们使用这样的东西自动标记坏提交-我们不直接拒绝他们,但潜在地使用这个来给出一个低得分,以防止合并,直到一个真实的人有机会看提交。我们使用Jenkins来处理所有的自动作业运行。一些快速的谷歌搜索揭示了关于如何设置这样的东西的各种指南。

因此,即使使用放弃按钮,它仍然会产生依赖于放弃的更改的问题。我们如何解决这个问题?是的-如果您已经推送了其他提交以供审查,并且这些提交的历史记录中有(现在已放弃)更改,那么它们将取决于UI中已放弃的提交。解决方案是使用“git rebase”修改提交树,以便放弃的提交不再存在。是来自eclipse的git rebase(egit)还是来自其他地方的git rebase?我更喜欢在命令行中使用git rebase-请参阅-但是的,egit也应该可以正常工作。