# 搜索/合并重复主题

**URL:** <https://meta.discourse.org/t/search-for-merge-duplicate-topics/135999>\
**Category:** Migration\
**Created:** [2019年十二月15日 12:58 UTC](https://meta.discourse.org/t/search-for-merge-duplicate-topics/135999 "2019-12-15T12:58:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![danb35](https://avatars.discourse-cdn.com/v4/letter/d/dfb087/32.png) [@danb35](https://meta.discourse.org/u/danb35)\
**Post date:** [2019年十二月15日 12:58 UTC](https://meta.discourse.org/t/search-for-merge-duplicate-topics/135999/1 "2019-12-15T12:58:51Z")

</div>

我从 Yahoo 群组导入的数据导致许多话题被碎片化（可能是因为用户过去回复不当，Yahoo 未能正确保持话题完整，导入脚本未能正确识别 Yahoo 的处理方式，或是这些因素的组合）。在其中一个案例中，这导致产生了十多个标题相同的 Discourse 话题，但实际上它们都属于同一个讨论。这引出了两个问题：

- 是否有自动方法可以找到这些重复话题？我的网站未设置允许重复话题，但导入的 20,000+ 个话题并未遵守此设置。
- 找到后，是否有方法将它们合并为一个话题，同时保留消息的时间顺序？我知道可以逐个将消息移动到另一个话题，这大致能达到目的，但无法很好地保持时间顺序，而且过程相当繁琐（扳手图标、选择帖子、全选、移动到、现有话题、输入编号、移动、返回、扳手图标、取消列出话题、重复上述步骤）。
- （好吧，是三个问题）上述操作能否在不提升话题活跃度的情况下完成？我手动清理的一个话题已有 15 年历史，每次将帖子移入其中时，都会向启用了邮件列表模式的用户（即大多数用户）发送邮件，导致了一些困惑。

我内心有一部分觉得存档就是存档，可以任其存在——但我更希望它们更有用，这意味着讨论应具备比现在更高的完整性。

---

<div class="post-metadata">

**Author:** ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Post date:** [2019年十二月15日 13:15 UTC](https://meta.discourse.org/t/search-for-merge-duplicate-topics/135999/2 "2019-12-15T13:15:55Z")

</div>

您可以按标题排序进行搜索来查找重复项。您可以运行一个 Rails 控制台脚本来合并它们，尽管我不知道是否有现成的示例。

如果您有预算，且此处无人提供解决方案，您可以在 #Marketplace 频道中提问。
