小编Rom*_*lle的帖子

如何在gerrit上重写历史?

Gerrit 不小心引入了一些合并提交(配置了“必要时合并”选项),我想将它们从历史记录中删除。我知道团队使用 Git 时重写历史记录的陷阱,但在我们的案例中,开发人员不会遭受这种情况,因为他们都没有在此特定存储库中进行本地更改。

git rebase -i在本地做了一个,Git 自动删除了 Gerrit 的合并提交。我小心地删除了每个提交消息中以前的 Gerrit Change-Id,并在 Gerrit 提交消息挂钩中添加了新的。

git status命令输出:

在分支 master 上您的分支和“origin/master”已经分歧,并且分别有 7 和 9 个不同的提交。(使用“git pull”将远程分支合并到您的分支中)无需提交,工作目录干净

这就是我想要的(9 次提交减去 2 次合并提交)。

当我尝试推动 Gerrit 时,git push origin HEAD:refs/for/master我没有收到任何错误。但是,当我尝试在 Gerrit Web 界面上审核并提交时,出现以下错误:

由于路径冲突,无法合并更改。请在本地对更改进行变基并上传变基提交以供审核。

我做错了什么?

git gerrit

5
推荐指数
1
解决办法
4659
查看次数

是否可以使用 json Include Columns 创建 PostgreSQL 索引?

我正在使用 PostgreSQL 11.8

CREATE INDEX ix_products_product_sku_with_json_columns
ON products USING btree((product_sku))
INCLUDE ((data->>'variantCode'));
Run Code Online (Sandbox Code Playgroud)

错误:包含的列不支持
表达式 SQL 状态:0A000

文档说:

不支持将表达式作为包含列,因为它们不能在仅索引扫描中使用。

我想data->>'variantCode'这是一个表达,这就是故事的结局?
我可以看到两种解决方法,但其中没有一个对我有吸引力:

  • 在表中创建专用的 VariantCode 常规 SQL 列
  • 作为data->>'variantCode'索引键的一部分

第二个选择有多糟糕?最终目标是在以下查询中
进行仅索引扫描:

SELECT data->>'variantCode', ARRAY_AGG(product_sku)
FROM products
GROUP BY data->>'variantCode'
Run Code Online (Sandbox Code Playgroud)

postgresql indexing postgresql-11

5
推荐指数
1
解决办法
500
查看次数

标签 统计

gerrit ×1

git ×1

indexing ×1

postgresql ×1

postgresql-11 ×1