Skip to main content

code-detect-dup

代码重复度检测技能:使用 Simian 和 JSCPD 检测项目中的重复代码

Aller à l'installation

Informations de source

Dépôt
hellyguo/self-ai-spec
Dernière activité de la source
16 juillet 2026 à 12:59
Langue détectée de SKILL.md
chinois
Étoiles
8
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
code-detect-dup
description
代码重复度检测技能:使用 Simian 和 JSCPD 检测项目中的重复代码
# 工具一:Simian ```bash java -jar ~/app/simian/simian-4.2.1.jar \ -language=java -threshold=20 \ $(fd -H -I -s -c never -t f -e java | grep --color=never -v "\/test\/" | xargs) \ > docs/dup-{yyyy-mm-dd}-{seq}.txt 2>&1 ``` 1. threshold 代表重复代码的行数,应根据实际情况调整 2. language 根据实际情况调整:java/cpp/csharp/javascript 3. fd0='fd -H -I -s -c never', grep0='grep --color=never' 4. seq 应从 001 开始,按日重置,报告应 git 留档 # 工具二:JSCPD ```bash # 安装 npm install -g jscpd # 检测并生成 HTML 报告 jscpd src/ --min-lines 15 --reporters html,console --output docs/jscpd-{yyyy-mm-dd}-{seq} # 排除目录 jscpd src/ --min-lines 15 --ignore "**/test/**,**/node_modules/**" --reporters html,console # 多语言项目 jscpd . --extensions java,ts,py,cpp --min-lines 15 --reporters html --output docs/jscpd-report ``` 1. --min-lines 最小重复行数,建议 Java 15-20,Python 10-15,Shell 5-10 2. --reporters 支持console/html/json/xml 3. --extensions 指定语言,不指定则自动检测 4. HTML 报告在 output/index.html # 工具对比 | 特性 | Simian | JSCPD | | --- | --- | --- | | 语言 | Java/C/C++/C# | 150+语言 | | 报告 | 文本 | HTML可视化 | | 安装 | JAR包 | npm |
Voir sur GitHub