facebook / fbshipit
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 7% duplication:
    • 4,715 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 373 duplicated lines
  • 57 duplicates
system7% (373 lines)
Duplication per Extension
php7% (373 lines)
Duplication per Component (primary)
src/shipit/phase13% (175 lines)
src/shipit/repo8% (91 lines)
src/shipit/github20% (40 lines)
src/importit/phase11% (25 lines)
src/shipit/filter2% (15 lines)
src/importit/filter12% (15 lines)
src/importit/repo9% (12 lines)
src/shipit0% (0 lines)
src0% (0 lines)
src/importit0% (0 lines)

Duplication Between Components (50+ lines)

G src/importit/phase src/importit/phase src/shipit/phase src/shipit/phase src/importit/phase--src/shipit/phase 74

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 57 duplicates...
Size#FoldersFilesLinesCode
18 x 2 src/shipit/phase
src/shipit/phase
31:51 (54%)
31:51 (54%)
view
18 x 2 src/shipit/phase
src/shipit/phase
30:49 (54%)
41:60 (29%)
view
17 x 2 src/shipit/phase
src/shipit/phase
31:49 (51%)
42:60 (27%)
view
15 x 2 src/shipit/phase
src/shipit/phase
67:83 (5%)
100:116 (13%)
view
13 x 2 src/importit/phase
src/shipit/phase
109:123 (6%)
67:81 (4%)
view
13 x 2 src/importit/phase
src/shipit/phase
109:123 (6%)
100:114 (11%)
view
12 x 2 src/importit/phase
src/shipit/phase
69:80 (5%)
53:64 (11%)
view
11 x 2 src/shipit/repo
src/shipit/repo
252:262 (2%)
268:278 (2%)
view
11 x 2 src/shipit/phase
src/shipit/phase
100:110 (10%)
73:83 (4%)
view
11 x 2 src/shipit/phase
src/shipit/phase
67:77 (3%)
73:83 (4%)
view
11 x 2 src/importit/phase
src/shipit/phase
109:119 (5%)
73:83 (4%)
view
9 x 2 src/shipit/repo
src/shipit/repo
68:77 (2%)
99:108 (2%)
view
9 x 2 src/importit/filter
src/shipit/filter
86:96 (11%)
90:100 (8%)
view
8 x 2 src/shipit/phase
src/shipit/phase
278:285 (2%)
342:349 (2%)
view
8 x 2 src/shipit/repo
src/shipit/repo
56:64 (2%)
86:94 (2%)
view
7 x 2 src/shipit/phase
src/shipit/phase
37:45 (10%)
28:36 (21%)
view
7 x 2 src/shipit/phase
src/shipit/phase
75:83 (2%)
81:89 (8%)
view
7 x 2 src/shipit/repo
src/shipit/repo
210:220 (1%)
349:359 (1%)
view
7 x 2 src/shipit/phase
src/shipit/phase
30:38 (21%)
28:36 (21%)
view
7 x 2 src/shipit/phase
src/shipit/phase
81:89 (8%)
108:116 (6%)
view
7 x 2 src/shipit/phase
src/shipit/phase
37:45 (10%)
41:49 (11%)
view
7 x 2 src/shipit/phase
src/shipit/phase
37:45 (10%)
30:38 (21%)
view
7 x 2 src/shipit/github
src/shipit/github
27:33 (35%)
22:28 (4%)
view
7 x 2 src/shipit/github
src/shipit/github
14:20 (35%)
35:41 (4%)
view
7 x 2 src/shipit/phase
src/shipit/phase
41:49 (11%)
28:36 (21%)
view
6 x 2 src/shipit/phase
src/shipit/phase
76:83 (2%)
31:38 (18%)
view
6 x 2 src/shipit/github
src/shipit/github
132:137 (3%)
165:170 (3%)
view
6 x 2 src/shipit/phase
src/shipit/phase
38:45 (9%)
76:83 (2%)
view
6 x 2 src/shipit/phase
src/shipit/phase
82:89 (7%)
29:36 (18%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
82:89 (7%)
view
6 x 2 src/shipit/phase
src/shipit/phase
36:43 (6%)
29:36 (18%)
view
6 x 2 src/shipit/phase
src/shipit/phase
42:49 (9%)
109:116 (5%)
view
6 x 2 src/shipit/repo
src/shipit/repo
207:214 (1%)
449:456 (1%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
76:83 (2%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
29:36 (18%)
view
6 x 2 src/importit/repo
src/importit/repo
30:35 (6%)
47:52 (6%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
36:43 (6%)
view
6 x 2 src/shipit/phase
src/shipit/phase
36:43 (6%)
42:49 (9%)
view
6 x 2 src/shipit/phase
src/shipit/phase
82:89 (7%)
31:38 (18%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
109:116 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
140:145 (2%)
165:170 (2%)
view
6 x 2 src/importit/filter
src/shipit/filter
25:30 (7%)
19:24 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
36:43 (6%)
82:89 (7%)
view
6 x 2 src/shipit/phase
src/shipit/phase
36:43 (6%)
31:38 (18%)
view
6 x 2 src/shipit/phase
src/shipit/phase
38:45 (9%)
109:116 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
31:38 (18%)
109:116 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
29:36 (18%)
109:116 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
36:43 (6%)
109:116 (5%)
view
6 x 2 src/shipit/phase
src/shipit/phase
38:45 (9%)
36:43 (6%)
view
6 x 2 src/shipit/phase
src/shipit/phase
76:83 (2%)
42:49 (9%)
view
Duplicated Units
The list of top 3 duplicated units.
See data for all 3 unit duplicates...
Size#FoldersFilesLinesCode
7 x 3 src/shipit/phase
src/shipit/phase
src/shipit/phase
36:44 
23:31 
32:40 
view
6 x 2 src/shipit/github
src/shipit/github
14:21 
35:42 
view
6 x 2 src/shipit/github
src/shipit/github
27:34 
22:29 
view