用途:QuickDup 是面向 .NET 仓库的开源免费克隆检测器,用于发现 C# 重复代码、结构性克隆,支持 DRY 清理、复制粘贴检测与重复逻辑移除。
主要能力:可对整个解决方案或指定文件夹进行扫描;默认仅扫描 .cs 文件,除非仓库明确需要 Razor、生成的 XML 等扩展名;支持排除生成与临时路径(bin/、obj/、Migrations/、.g.cs、.generated.cs、*.Designer.cs);可查看排名靠前的重复模式,并在重构后重新扫描。
使用方式:先读取最近的 AGENTS.md 确认范围与约束。若未安装,可检测状态(command -v quickdup、go version、rg --files -g '.quickdup/ignore.json' -g '.quickdup/results.json'),优先使用 go install github.com/asynkron/Asynkron.QuickDup/cmd/quickdup@latest;macOS/Linux 回退 curl -sSL https://raw.githubusercontent.com/asynkron/Asynkron.QuickDup/main/install.sh | bash;Windows 回退 iwr -useb https://raw.githubusercontent.com/asynkron/Asynkron.QuickDup/main/install.ps1 | iex。安装后用 quickdup -h 验证。示例命令:quickdup -path . -ext .cs -exclude "bin/,obj/,.g.cs,.generated.cs,*.Designer.cs";quickdup -path src -ext .cs -top 20;quickdup -path . -ext .cs -select 0..5。如需稳定抑制,可创建 .quickdup/ignore.json 并逐条审查。
适用场景:需要可重复的 C# 重复代码扫描、DRY 清理、复制粘贴检测、克隆检测或重复逻辑移除的 .NET 仓库。
限制:不适用于仅做格式化的任务;不适用于已标准化使用其他克隆检测器且不希望重叠的仓库;生成代码频繁变动导致重复发现多为噪声时也不适用。QuickDup 输出应作为审查输入,而非自动重写依据。重构需保持行为并由相关测试验证。具体收费、价格、平台与效果资料暂未提供。